⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sin.vhd

📁 用VHDL语言实现DDS直接数字频率合成器的设计
💻 VHD
📖 第 1 页 / 共 3 页
字号:
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

--  Uncomment the following lines to use the declarations that are
--  provided for instantiating Xilinx primitive components.
--library UNISIM;
--use UNISIM.VComponents.all;

entity sin is
	port(
		rst   : in  std_logic;
		clk   : in  std_logic;
		adder : in  std_logic_vector(15 downto 0);
		data  : out std_logic_vector(15 downto 0)
	);
end sin;

architecture Behavioral of sin is

begin

process(rst,clk)
	begin
		if rst='0' then
			data<=x"0000";
		elsif clk'event and clk='1' then
			case adder is
				when x"0000" => data<=x"0000";
				when x"0001" => data<=x"000f";
				when x"0002" => data<=x"001e";
				when x"0003" => data<=x"002e";
				when x"0004" => data<=x"003d";
				when x"0005" => data<=x"004c";
				when x"0006" => data<=x"005c";
				when x"0007" => data<=x"006b";
				when x"0008" => data<=x"007a";
				when x"0009" => data<=x"008a";
				when x"000a" => data<=x"0099";
				when x"000b" => data<=x"00a8";
				when x"000c" => data<=x"00b8";
				when x"000d" => data<=x"00c7";
				when x"000e" => data<=x"00d6";
				when x"000f" => data<=x"00e6";
				when x"0010" => data<=x"00f5";
				when x"0011" => data<=x"0104";
				when x"0012" => data<=x"0114";
				when x"0013" => data<=x"0123";
				when x"0014" => data<=x"0132";
				when x"0015" => data<=x"0142";
				when x"0016" => data<=x"0151";
				when x"0017" => data<=x"0160";
				when x"0018" => data<=x"0170";
				when x"0019" => data<=x"017f";
				when x"001a" => data<=x"018e";
				when x"001b" => data<=x"019e";
				when x"001c" => data<=x"01ad";
				when x"001d" => data<=x"01bc";
				when x"001e" => data<=x"01cc";
				when x"001f" => data<=x"01db";
				when x"0020" => data<=x"01ea";
				when x"0021" => data<=x"01f9";
				when x"0022" => data<=x"0209";
				when x"0023" => data<=x"0218";
				when x"0024" => data<=x"0227";
				when x"0025" => data<=x"0237";
				when x"0026" => data<=x"0246";
				when x"0027" => data<=x"0255";
				when x"0028" => data<=x"0265";
				when x"0029" => data<=x"0274";
				when x"002a" => data<=x"0283";
				when x"002b" => data<=x"0293";
				when x"002c" => data<=x"02a2";
				when x"002d" => data<=x"02b1";
				when x"002e" => data<=x"02c1";
				when x"002f" => data<=x"02d0";
				when x"0030" => data<=x"02df";
				when x"0031" => data<=x"02ee";
				when x"0032" => data<=x"02fe";
				when x"0033" => data<=x"030d";
				when x"0034" => data<=x"031c";
				when x"0035" => data<=x"032c";
				when x"0036" => data<=x"033b";
				when x"0037" => data<=x"034a";
				when x"0038" => data<=x"0359";
				when x"0039" => data<=x"0369";
				when x"003a" => data<=x"0378";
				when x"003b" => data<=x"0387";
				when x"003c" => data<=x"0397";
				when x"003d" => data<=x"03a6";
				when x"003e" => data<=x"03b5";
				when x"003f" => data<=x"03c4";
				when x"0040" => data<=x"03d4";
				when x"0041" => data<=x"03e3";
				when x"0042" => data<=x"03f2";
				when x"0043" => data<=x"0401";
				when x"0044" => data<=x"0411";
				when x"0045" => data<=x"0420";
				when x"0046" => data<=x"042f";
				when x"0047" => data<=x"043e";
				when x"0048" => data<=x"044e";
				when x"0049" => data<=x"045d";
				when x"004a" => data<=x"046c";
				when x"004b" => data<=x"047b";
				when x"004c" => data<=x"048b";
				when x"004d" => data<=x"049a";
				when x"004e" => data<=x"04a9";
				when x"004f" => data<=x"04b8";
				when x"0050" => data<=x"04c8";
				when x"0051" => data<=x"04d7";
				when x"0052" => data<=x"04e6";
				when x"0053" => data<=x"04f5";
				when x"0054" => data<=x"0504";
				when x"0055" => data<=x"0514";
				when x"0056" => data<=x"0523";
				when x"0057" => data<=x"0532";
				when x"0058" => data<=x"0541";
				when x"0059" => data<=x"0551";
				when x"005a" => data<=x"0560";
				when x"005b" => data<=x"056f";
				when x"005c" => data<=x"057e";
				when x"005d" => data<=x"058d";
				when x"005e" => data<=x"059c";
				when x"005f" => data<=x"05ac";
				when x"0060" => data<=x"05bb";
				when x"0061" => data<=x"05ca";
				when x"0062" => data<=x"05d9";
				when x"0063" => data<=x"05e8";
				when x"0064" => data<=x"05f7";
				when x"0065" => data<=x"0607";
				when x"0066" => data<=x"0616";
				when x"0067" => data<=x"0625";
				when x"0068" => data<=x"0634";
				when x"0069" => data<=x"0643";
				when x"006a" => data<=x"0652";
				when x"006b" => data<=x"0661";
				when x"006c" => data<=x"0671";
				when x"006d" => data<=x"0680";
				when x"006e" => data<=x"068f";
				when x"006f" => data<=x"069e";
				when x"0070" => data<=x"06ad";
				when x"0071" => data<=x"06bc";
				when x"0072" => data<=x"06cb";
				when x"0073" => data<=x"06da";
				when x"0074" => data<=x"06ea";
				when x"0075" => data<=x"06f9";
				when x"0076" => data<=x"0708";
				when x"0077" => data<=x"0717";
				when x"0078" => data<=x"0726";
				when x"0079" => data<=x"0735";
				when x"007a" => data<=x"0744";
				when x"007b" => data<=x"0753";
				when x"007c" => data<=x"0762";
				when x"007d" => data<=x"0771";
				when x"007e" => data<=x"0780";
				when x"007f" => data<=x"078f";
				when x"0080" => data<=x"079e";
				when x"0081" => data<=x"07ad";
				when x"0082" => data<=x"07bc";
				when x"0083" => data<=x"07cc";
				when x"0084" => data<=x"07db";
				when x"0085" => data<=x"07ea";
				when x"0086" => data<=x"07f9";
				when x"0087" => data<=x"0808";
				when x"0088" => data<=x"0817";
				when x"0089" => data<=x"0826";
				when x"008a" => data<=x"0835";
				when x"008b" => data<=x"0844";
				when x"008c" => data<=x"0853";
				when x"008d" => data<=x"0862";
				when x"008e" => data<=x"0871";
				when x"008f" => data<=x"0880";
				when x"0090" => data<=x"088f";
				when x"0091" => data<=x"089d";
				when x"0092" => data<=x"08ac";
				when x"0093" => data<=x"08bb";
				when x"0094" => data<=x"08ca";
				when x"0095" => data<=x"08d9";
				when x"0096" => data<=x"08e8";
				when x"0097" => data<=x"08f7";
				when x"0098" => data<=x"0906";
				when x"0099" => data<=x"0915";
				when x"009a" => data<=x"0924";
				when x"009b" => data<=x"0933";
				when x"009c" => data<=x"0942";
				when x"009d" => data<=x"0951";
				when x"009e" => data<=x"0960";
				when x"009f" => data<=x"096e";
				when x"00a0" => data<=x"097d";
				when x"00a1" => data<=x"098c";
				when x"00a2" => data<=x"099b";
				when x"00a3" => data<=x"09aa";
				when x"00a4" => data<=x"09b9";
				when x"00a5" => data<=x"09c8";
				when x"00a6" => data<=x"09d6";
				when x"00a7" => data<=x"09e5";
				when x"00a8" => data<=x"09f4";
				when x"00a9" => data<=x"0a03";
				when x"00aa" => data<=x"0a12";
				when x"00ab" => data<=x"0a21";
				when x"00ac" => data<=x"0a2f";
				when x"00ad" => data<=x"0a3e";
				when x"00ae" => data<=x"0a4d";
				when x"00af" => data<=x"0a5c";
				when x"00b0" => data<=x"0a6b";
				when x"00b1" => data<=x"0a79";
				when x"00b2" => data<=x"0a88";
				when x"00b3" => data<=x"0a97";
				when x"00b4" => data<=x"0aa6";
				when x"00b5" => data<=x"0ab4";
				when x"00b6" => data<=x"0ac3";
				when x"00b7" => data<=x"0ad2";
				when x"00b8" => data<=x"0ae1";
				when x"00b9" => data<=x"0aef";
				when x"00ba" => data<=x"0afe";
				when x"00bb" => data<=x"0b0d";
				when x"00bc" => data<=x"0b1c";
				when x"00bd" => data<=x"0b2a";
				when x"00be" => data<=x"0b39";
				when x"00bf" => data<=x"0b48";
				when x"00c0" => data<=x"0b56";
				when x"00c1" => data<=x"0b65";
				when x"00c2" => data<=x"0b74";
				when x"00c3" => data<=x"0b82";
				when x"00c4" => data<=x"0b91";
				when x"00c5" => data<=x"0ba0";
				when x"00c6" => data<=x"0bae";
				when x"00c7" => data<=x"0bbd";
				when x"00c8" => data<=x"0bcc";
				when x"00c9" => data<=x"0bda";
				when x"00ca" => data<=x"0be9";
				when x"00cb" => data<=x"0bf7";
				when x"00cc" => data<=x"0c06";
				when x"00cd" => data<=x"0c15";
				when x"00ce" => data<=x"0c23";
				when x"00cf" => data<=x"0c32";
				when x"00d0" => data<=x"0c40";
				when x"00d1" => data<=x"0c4f";
				when x"00d2" => data<=x"0c5d";
				when x"00d3" => data<=x"0c6c";
				when x"00d4" => data<=x"0c7b";
				when x"00d5" => data<=x"0c89";
				when x"00d6" => data<=x"0c98";
				when x"00d7" => data<=x"0ca6";
				when x"00d8" => data<=x"0cb5";
				when x"00d9" => data<=x"0cc3";
				when x"00da" => data<=x"0cd2";
				when x"00db" => data<=x"0ce0";
				when x"00dc" => data<=x"0cef";
				when x"00dd" => data<=x"0cfd";
				when x"00de" => data<=x"0d0b";
				when x"00df" => data<=x"0d1a";
				when x"00e0" => data<=x"0d28";
				when x"00e1" => data<=x"0d37";
				when x"00e2" => data<=x"0d45";
				when x"00e3" => data<=x"0d54";
				when x"00e4" => data<=x"0d62";
				when x"00e5" => data<=x"0d71";
				when x"00e6" => data<=x"0d7f";
				when x"00e7" => data<=x"0d8d";
				when x"00e8" => data<=x"0d9c";
				when x"00e9" => data<=x"0daa";
				when x"00ea" => data<=x"0db8";
				when x"00eb" => data<=x"0dc7";
				when x"00ec" => data<=x"0dd5";
				when x"00ed" => data<=x"0de3";
				when x"00ee" => data<=x"0df2";
				when x"00ef" => data<=x"0e00";
				when x"00f0" => data<=x"0e0e";
				when x"00f1" => data<=x"0e1d";
				when x"00f2" => data<=x"0e2b";
				when x"00f3" => data<=x"0e39";
				when x"00f4" => data<=x"0e48";
				when x"00f5" => data<=x"0e56";
				when x"00f6" => data<=x"0e64";
				when x"00f7" => data<=x"0e72";
				when x"00f8" => data<=x"0e81";
				when x"00f9" => data<=x"0e8f";
				when x"00fa" => data<=x"0e9d";
				when x"00fb" => data<=x"0eab";
				when x"00fc" => data<=x"0eba";
				when x"00fd" => data<=x"0ec8";
				when x"00fe" => data<=x"0ed6";
				when x"00ff" => data<=x"0ee4";
				when x"0100" => data<=x"0ef2";
				when x"0101" => data<=x"0f01";
				when x"0102" => data<=x"0f0f";
				when x"0103" => data<=x"0f1d";
				when x"0104" => data<=x"0f2b";
				when x"0105" => data<=x"0f39";
				when x"0106" => data<=x"0f47";
				when x"0107" => data<=x"0f55";
				when x"0108" => data<=x"0f63";
				when x"0109" => data<=x"0f72";
				when x"010a" => data<=x"0f80";
				when x"010b" => data<=x"0f8e";
				when x"010c" => data<=x"0f9c";
				when x"010d" => data<=x"0faa";
				when x"010e" => data<=x"0fb8";
				when x"010f" => data<=x"0fc6";
				when x"0110" => data<=x"0fd4";
				when x"0111" => data<=x"0fe2";
				when x"0112" => data<=x"0ff0";
				when x"0113" => data<=x"0ffe";
				when x"0114" => data<=x"100c";
				when x"0115" => data<=x"101a";
				when x"0116" => data<=x"1028";
				when x"0117" => data<=x"1036";
				when x"0118" => data<=x"1044";
				when x"0119" => data<=x"1052";
				when x"011a" => data<=x"1060";
				when x"011b" => data<=x"106e";
				when x"011c" => data<=x"107c";
				when x"011d" => data<=x"1089";
				when x"011e" => data<=x"1097";
				when x"011f" => data<=x"10a5";
				when x"0120" => data<=x"10b3";
				when x"0121" => data<=x"10c1";
				when x"0122" => data<=x"10cf";
				when x"0123" => data<=x"10dd";
				when x"0124" => data<=x"10ea";
				when x"0125" => data<=x"10f8";
				when x"0126" => data<=x"1106";
				when x"0127" => data<=x"1114";
				when x"0128" => data<=x"1122";
				when x"0129" => data<=x"112f";
				when x"012a" => data<=x"113d";
				when x"012b" => data<=x"114b";
				when x"012c" => data<=x"1159";
				when x"012d" => data<=x"1166";
				when x"012e" => data<=x"1174";
				when x"012f" => data<=x"1182";
				when x"0130" => data<=x"1190";
				when x"0131" => data<=x"119d";
				when x"0132" => data<=x"11ab";
				when x"0133" => data<=x"11b9";
				when x"0134" => data<=x"11c6";
				when x"0135" => data<=x"11d4";
				when x"0136" => data<=x"11e2";
				when x"0137" => data<=x"11ef";
				when x"0138" => data<=x"11fd";
				when x"0139" => data<=x"120a";
				when x"013a" => data<=x"1218";
				when x"013b" => data<=x"1226";
				when x"013c" => data<=x"1233";
				when x"013d" => data<=x"1241";
				when x"013e" => data<=x"124e";
				when x"013f" => data<=x"125c";
				when x"0140" => data<=x"1269";
				when x"0141" => data<=x"1277";
				when x"0142" => data<=x"1285";
				when x"0143" => data<=x"1292";
				when x"0144" => data<=x"129f";

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -