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

📄 sin_rom.vhd

📁 描述:LED示范、按钮及开关、视频输出、键入、含Xilinx PicoBlaze微处理器的存储器模块
💻 VHD
📖 第 1 页 / 共 3 页
字号:
--Asynchronous ROM storing the amplitude for sine.
--Generated with external script, see the documentation for details
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;

library UNISIM;
use UNISIM.VComponents.all;

entity sin_rom is
    Port ( address : in std_logic_vector(9 downto 0);
           sine_value : out std_logic_vector(7 downto 0));
end sin_rom;

architecture Behavioral of sin_rom is
signal extended_address: std_logic_vector(11 downto 0);
begin
	extended_address(11 downto 10) <= "00";
	extended_address(9 downto 0)   <=  address(9 downto 0);

	process (extended_address)
	begin
		case extended_address is
			when X"000" => sine_value <= X"7F";
			when X"001" => sine_value <= X"7F";
			when X"002" => sine_value <= X"80";
			when X"003" => sine_value <= X"81";
			when X"004" => sine_value <= X"82";
			when X"005" => sine_value <= X"82";
			when X"006" => sine_value <= X"83";
			when X"007" => sine_value <= X"84";
			when X"008" => sine_value <= X"85";
			when X"009" => sine_value <= X"85";
			when X"00A" => sine_value <= X"86";
			when X"00B" => sine_value <= X"87";
			when X"00C" => sine_value <= X"88";
			when X"00D" => sine_value <= X"89";
			when X"00E" => sine_value <= X"89";
			when X"00F" => sine_value <= X"8A";
			when X"010" => sine_value <= X"8B";
			when X"011" => sine_value <= X"8C";
			when X"012" => sine_value <= X"8C";
			when X"013" => sine_value <= X"8D";
			when X"014" => sine_value <= X"8E";
			when X"015" => sine_value <= X"8F";
			when X"016" => sine_value <= X"8F";
			when X"017" => sine_value <= X"90";
			when X"018" => sine_value <= X"91";
			when X"019" => sine_value <= X"92";
			when X"01A" => sine_value <= X"93";
			when X"01B" => sine_value <= X"93";
			when X"01C" => sine_value <= X"94";
			when X"01D" => sine_value <= X"95";
			when X"01E" => sine_value <= X"96";
			when X"01F" => sine_value <= X"96";
			when X"020" => sine_value <= X"97";
			when X"021" => sine_value <= X"98";
			when X"022" => sine_value <= X"99";
			when X"023" => sine_value <= X"99";
			when X"024" => sine_value <= X"9A";
			when X"025" => sine_value <= X"9B";
			when X"026" => sine_value <= X"9C";
			when X"027" => sine_value <= X"9C";
			when X"028" => sine_value <= X"9D";
			when X"029" => sine_value <= X"9E";
			when X"02A" => sine_value <= X"9F";
			when X"02B" => sine_value <= X"9F";
			when X"02C" => sine_value <= X"A0";
			when X"02D" => sine_value <= X"A1";
			when X"02E" => sine_value <= X"A2";
			when X"02F" => sine_value <= X"A2";
			when X"030" => sine_value <= X"A3";
			when X"031" => sine_value <= X"A4";
			when X"032" => sine_value <= X"A5";
			when X"033" => sine_value <= X"A5";
			when X"034" => sine_value <= X"A6";
			when X"035" => sine_value <= X"A7";
			when X"036" => sine_value <= X"A7";
			when X"037" => sine_value <= X"A8";
			when X"038" => sine_value <= X"A9";
			when X"039" => sine_value <= X"AA";
			when X"03A" => sine_value <= X"AA";
			when X"03B" => sine_value <= X"AB";
			when X"03C" => sine_value <= X"AC";
			when X"03D" => sine_value <= X"AD";
			when X"03E" => sine_value <= X"AD";
			when X"03F" => sine_value <= X"AE";
			when X"040" => sine_value <= X"AF";
			when X"041" => sine_value <= X"AF";
			when X"042" => sine_value <= X"B0";
			when X"043" => sine_value <= X"B1";
			when X"044" => sine_value <= X"B2";
			when X"045" => sine_value <= X"B2";
			when X"046" => sine_value <= X"B3";
			when X"047" => sine_value <= X"B4";
			when X"048" => sine_value <= X"B4";
			when X"049" => sine_value <= X"B5";
			when X"04A" => sine_value <= X"B6";
			when X"04B" => sine_value <= X"B6";
			when X"04C" => sine_value <= X"B7";
			when X"04D" => sine_value <= X"B8";
			when X"04E" => sine_value <= X"B9";
			when X"04F" => sine_value <= X"B9";
			when X"050" => sine_value <= X"BA";
			when X"051" => sine_value <= X"BB";
			when X"052" => sine_value <= X"BB";
			when X"053" => sine_value <= X"BC";
			when X"054" => sine_value <= X"BD";
			when X"055" => sine_value <= X"BD";
			when X"056" => sine_value <= X"BE";
			when X"057" => sine_value <= X"BF";
			when X"058" => sine_value <= X"BF";
			when X"059" => sine_value <= X"C0";
			when X"05A" => sine_value <= X"C1";
			when X"05B" => sine_value <= X"C1";
			when X"05C" => sine_value <= X"C2";
			when X"05D" => sine_value <= X"C3";
			when X"05E" => sine_value <= X"C3";
			when X"05F" => sine_value <= X"C4";
			when X"060" => sine_value <= X"C5";
			when X"061" => sine_value <= X"C5";
			when X"062" => sine_value <= X"C6";
			when X"063" => sine_value <= X"C6";
			when X"064" => sine_value <= X"C7";
			when X"065" => sine_value <= X"C8";
			when X"066" => sine_value <= X"C8";
			when X"067" => sine_value <= X"C9";
			when X"068" => sine_value <= X"CA";
			when X"069" => sine_value <= X"CA";
			when X"06A" => sine_value <= X"CB";
			when X"06B" => sine_value <= X"CB";
			when X"06C" => sine_value <= X"CC";
			when X"06D" => sine_value <= X"CD";
			when X"06E" => sine_value <= X"CD";
			when X"06F" => sine_value <= X"CE";
			when X"070" => sine_value <= X"CE";
			when X"071" => sine_value <= X"CF";
			when X"072" => sine_value <= X"D0";
			when X"073" => sine_value <= X"D0";
			when X"074" => sine_value <= X"D1";
			when X"075" => sine_value <= X"D1";
			when X"076" => sine_value <= X"D2";
			when X"077" => sine_value <= X"D3";
			when X"078" => sine_value <= X"D3";
			when X"079" => sine_value <= X"D4";
			when X"07A" => sine_value <= X"D4";
			when X"07B" => sine_value <= X"D5";
			when X"07C" => sine_value <= X"D5";
			when X"07D" => sine_value <= X"D6";
			when X"07E" => sine_value <= X"D6";
			when X"07F" => sine_value <= X"D7";
			when X"080" => sine_value <= X"D8";
			when X"081" => sine_value <= X"D8";
			when X"082" => sine_value <= X"D9";
			when X"083" => sine_value <= X"D9";
			when X"084" => sine_value <= X"DA";
			when X"085" => sine_value <= X"DA";
			when X"086" => sine_value <= X"DB";
			when X"087" => sine_value <= X"DB";
			when X"088" => sine_value <= X"DC";
			when X"089" => sine_value <= X"DC";
			when X"08A" => sine_value <= X"DD";
			when X"08B" => sine_value <= X"DD";
			when X"08C" => sine_value <= X"DE";
			when X"08D" => sine_value <= X"DE";
			when X"08E" => sine_value <= X"DF";
			when X"08F" => sine_value <= X"DF";
			when X"090" => sine_value <= X"E0";
			when X"091" => sine_value <= X"E0";
			when X"092" => sine_value <= X"E1";
			when X"093" => sine_value <= X"E1";
			when X"094" => sine_value <= X"E2";
			when X"095" => sine_value <= X"E2";
			when X"096" => sine_value <= X"E3";
			when X"097" => sine_value <= X"E3";
			when X"098" => sine_value <= X"E4";
			when X"099" => sine_value <= X"E4";
			when X"09A" => sine_value <= X"E5";
			when X"09B" => sine_value <= X"E5";
			when X"09C" => sine_value <= X"E6";
			when X"09D" => sine_value <= X"E6";
			when X"09E" => sine_value <= X"E6";
			when X"09F" => sine_value <= X"E7";
			when X"0A0" => sine_value <= X"E7";
			when X"0A1" => sine_value <= X"E8";
			when X"0A2" => sine_value <= X"E8";
			when X"0A3" => sine_value <= X"E9";
			when X"0A4" => sine_value <= X"E9";
			when X"0A5" => sine_value <= X"E9";
			when X"0A6" => sine_value <= X"EA";
			when X"0A7" => sine_value <= X"EA";
			when X"0A8" => sine_value <= X"EB";
			when X"0A9" => sine_value <= X"EB";
			when X"0AA" => sine_value <= X"EB";
			when X"0AB" => sine_value <= X"EC";
			when X"0AC" => sine_value <= X"EC";
			when X"0AD" => sine_value <= X"ED";
			when X"0AE" => sine_value <= X"ED";
			when X"0AF" => sine_value <= X"ED";
			when X"0B0" => sine_value <= X"EE";
			when X"0B1" => sine_value <= X"EE";
			when X"0B2" => sine_value <= X"EE";
			when X"0B3" => sine_value <= X"EF";
			when X"0B4" => sine_value <= X"EF";
			when X"0B5" => sine_value <= X"EF";
			when X"0B6" => sine_value <= X"F0";
			when X"0B7" => sine_value <= X"F0";
			when X"0B8" => sine_value <= X"F0";
			when X"0B9" => sine_value <= X"F1";
			when X"0BA" => sine_value <= X"F1";
			when X"0BB" => sine_value <= X"F1";
			when X"0BC" => sine_value <= X"F2";
			when X"0BD" => sine_value <= X"F2";
			when X"0BE" => sine_value <= X"F2";
			when X"0BF" => sine_value <= X"F3";
			when X"0C0" => sine_value <= X"F3";
			when X"0C1" => sine_value <= X"F3";
			when X"0C2" => sine_value <= X"F3";
			when X"0C3" => sine_value <= X"F4";
			when X"0C4" => sine_value <= X"F4";
			when X"0C5" => sine_value <= X"F4";
			when X"0C6" => sine_value <= X"F5";
			when X"0C7" => sine_value <= X"F5";
			when X"0C8" => sine_value <= X"F5";
			when X"0C9" => sine_value <= X"F5";
			when X"0CA" => sine_value <= X"F6";
			when X"0CB" => sine_value <= X"F6";
			when X"0CC" => sine_value <= X"F6";
			when X"0CD" => sine_value <= X"F6";
			when X"0CE" => sine_value <= X"F7";
			when X"0CF" => sine_value <= X"F7";
			when X"0D0" => sine_value <= X"F7";
			when X"0D1" => sine_value <= X"F7";
			when X"0D2" => sine_value <= X"F8";
			when X"0D3" => sine_value <= X"F8";
			when X"0D4" => sine_value <= X"F8";
			when X"0D5" => sine_value <= X"F8";
			when X"0D6" => sine_value <= X"F8";
			when X"0D7" => sine_value <= X"F9";
			when X"0D8" => sine_value <= X"F9";
			when X"0D9" => sine_value <= X"F9";
			when X"0DA" => sine_value <= X"F9";
			when X"0DB" => sine_value <= X"F9";
			when X"0DC" => sine_value <= X"F9";
			when X"0DD" => sine_value <= X"FA";
			when X"0DE" => sine_value <= X"FA";
			when X"0DF" => sine_value <= X"FA";
			when X"0E0" => sine_value <= X"FA";
			when X"0E1" => sine_value <= X"FA";
			when X"0E2" => sine_value <= X"FA";
			when X"0E3" => sine_value <= X"FB";
			when X"0E4" => sine_value <= X"FB";
			when X"0E5" => sine_value <= X"FB";
			when X"0E6" => sine_value <= X"FB";
			when X"0E7" => sine_value <= X"FB";
			when X"0E8" => sine_value <= X"FB";
			when X"0E9" => sine_value <= X"FB";
			when X"0EA" => sine_value <= X"FB";
			when X"0EB" => sine_value <= X"FB";
			when X"0EC" => sine_value <= X"FC";
			when X"0ED" => sine_value <= X"FC";
			when X"0EE" => sine_value <= X"FC";
			when X"0EF" => sine_value <= X"FC";
			when X"0F0" => sine_value <= X"FC";
			when X"0F1" => sine_value <= X"FC";
			when X"0F2" => sine_value <= X"FC";
			when X"0F3" => sine_value <= X"FC";
			when X"0F4" => sine_value <= X"FC";
			when X"0F5" => sine_value <= X"FC";
			when X"0F6" => sine_value <= X"FC";
			when X"0F7" => sine_value <= X"FC";
			when X"0F8" => sine_value <= X"FC";
			when X"0F9" => sine_value <= X"FC";
			when X"0FA" => sine_value <= X"FC";
			when X"0FB" => sine_value <= X"FC";
			when X"0FC" => sine_value <= X"FC";
			when X"0FD" => sine_value <= X"FC";
			when X"0FE" => sine_value <= X"FC";
			when X"0FF" => sine_value <= X"FC";
			when X"100" => sine_value <= X"FD";
			when X"101" => sine_value <= X"FC";
			when X"102" => sine_value <= X"FC";
			when X"103" => sine_value <= X"FC";
			when X"104" => sine_value <= X"FC";
			when X"105" => sine_value <= X"FC";
			when X"106" => sine_value <= X"FC";
			when X"107" => sine_value <= X"FC";
			when X"108" => sine_value <= X"FC";
			when X"109" => sine_value <= X"FC";
			when X"10A" => sine_value <= X"FC";
			when X"10B" => sine_value <= X"FC";
			when X"10C" => sine_value <= X"FC";
			when X"10D" => sine_value <= X"FC";
			when X"10E" => sine_value <= X"FC";
			when X"10F" => sine_value <= X"FC";
			when X"110" => sine_value <= X"FC";
			when X"111" => sine_value <= X"FC";
			when X"112" => sine_value <= X"FC";
			when X"113" => sine_value <= X"FC";
			when X"114" => sine_value <= X"FC";
			when X"115" => sine_value <= X"FB";
			when X"116" => sine_value <= X"FB";
			when X"117" => sine_value <= X"FB";
			when X"118" => sine_value <= X"FB";
			when X"119" => sine_value <= X"FB";
			when X"11A" => sine_value <= X"FB";
			when X"11B" => sine_value <= X"FB";
			when X"11C" => sine_value <= X"FB";
			when X"11D" => sine_value <= X"FB";
			when X"11E" => sine_value <= X"FA";
			when X"11F" => sine_value <= X"FA";
			when X"120" => sine_value <= X"FA";
			when X"121" => sine_value <= X"FA";
			when X"122" => sine_value <= X"FA";
			when X"123" => sine_value <= X"FA";
			when X"124" => sine_value <= X"F9";
			when X"125" => sine_value <= X"F9";
			when X"126" => sine_value <= X"F9";
			when X"127" => sine_value <= X"F9";
			when X"128" => sine_value <= X"F9";
			when X"129" => sine_value <= X"F9";
			when X"12A" => sine_value <= X"F8";
			when X"12B" => sine_value <= X"F8";
			when X"12C" => sine_value <= X"F8";
			when X"12D" => sine_value <= X"F8";
			when X"12E" => sine_value <= X"F8";
			when X"12F" => sine_value <= X"F7";
			when X"130" => sine_value <= X"F7";
			when X"131" => sine_value <= X"F7";
			when X"132" => sine_value <= X"F7";
			when X"133" => sine_value <= X"F6";
			when X"134" => sine_value <= X"F6";
			when X"135" => sine_value <= X"F6";
			when X"136" => sine_value <= X"F6";
			when X"137" => sine_value <= X"F5";
			when X"138" => sine_value <= X"F5";
			when X"139" => sine_value <= X"F5";
			when X"13A" => sine_value <= X"F5";
			when X"13B" => sine_value <= X"F4";
			when X"13C" => sine_value <= X"F4";
			when X"13D" => sine_value <= X"F4";
			when X"13E" => sine_value <= X"F3";
			when X"13F" => sine_value <= X"F3";
			when X"140" => sine_value <= X"F3";
			when X"141" => sine_value <= X"F3";
			when X"142" => sine_value <= X"F2";
			when X"143" => sine_value <= X"F2";
			when X"144" => sine_value <= X"F2";
			when X"145" => sine_value <= X"F1";
			when X"146" => sine_value <= X"F1";

⌨️ 快捷键说明

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