?? gh_sincos_rom_14_4.vhd
字號:
---------------------------------------------------------------------
-- Filename: gh_sincos_rom_14_4.vhd
--
-- Description:
-- Sin Cos look up table 14 bit (from 1/4 table)
--
-- Copyright (c) 2008 by George Huber
-- an OpenCores.org Project
-- free to use, but see documentation for conditions
--
-- Revision History:
-- Revision Date Author Comment
-- -------- ---------- --------- -----------
-- 1.0 11/01/08 h LeFevre Initial revision
--
------------------------------------------------------------------
library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.STD_LOGIC_arith.all;
use IEEE.std_logic_unsigned.all;
entity gh_sincos_rom_14_4 is
port (
CLK : in std_logic;
ADD : in std_logic_vector(13 downto 0);
sin : out std_logic_vector(13 downto 0);
cos : out std_logic_vector(13 downto 0)
);
end entity;
architecture a of gh_sincos_rom_14_4 is
signal pdsADD, pdcADD : STD_LOGIC;
signal dsADD, dcADD : STD_LOGIC;
signal sAz, cAz : STD_LOGIC;
signal sADD, cADD : STD_LOGIC_VECTOR(13 DOWNTO 0);
signal msin, mcos : STD_LOGIC_VECTOR(13 DOWNTO 0);
type rom_mem is array (0 to 4095) of std_logic_vector (15 downto 0);
constant isin : rom_mem :=(
x"0000", x"0003", x"0006", x"0009", x"000d", x"0010", x"0013", x"0016",
x"0019", x"001c", x"001f", x"0023", x"0026", x"0029", x"002c", x"002f",
x"0032", x"0035", x"0039", x"003c", x"003f", x"0042", x"0045", x"0048",
x"004b", x"004f", x"0052", x"0055", x"0058", x"005b", x"005e", x"0061",
x"0065", x"0068", x"006b", x"006e", x"0071", x"0074", x"0077", x"007b",
x"007e", x"0081", x"0084", x"0087", x"008a", x"008d", x"0090", x"0094",
x"0097", x"009a", x"009d", x"00a0", x"00a3", x"00a6", x"00aa", x"00ad",
x"00b0", x"00b3", x"00b6", x"00b9", x"00bc", x"00c0", x"00c3", x"00c6",
x"00c9", x"00cc", x"00cf", x"00d2", x"00d6", x"00d9", x"00dc", x"00df",
x"00e2", x"00e5", x"00e8", x"00ec", x"00ef", x"00f2", x"00f5", x"00f8",
x"00fb", x"00fe", x"0102", x"0105", x"0108", x"010b", x"010e", x"0111",
x"0114", x"0118", x"011b", x"011e", x"0121", x"0124", x"0127", x"012a",
x"012d", x"0131", x"0134", x"0137", x"013a", x"013d", x"0140", x"0143",
x"0147", x"014a", x"014d", x"0150", x"0153", x"0156", x"0159", x"015d",
x"0160", x"0163", x"0166", x"0169", x"016c", x"016f", x"0173", x"0176",
x"0179", x"017c", x"017f", x"0182", x"0185", x"0189", x"018c", x"018f",
x"0192", x"0195", x"0198", x"019b", x"019e", x"01a2", x"01a5", x"01a8",
x"01ab", x"01ae", x"01b1", x"01b4", x"01b8", x"01bb", x"01be", x"01c1",
x"01c4", x"01c7", x"01ca", x"01ce", x"01d1", x"01d4", x"01d7", x"01da",
x"01dd", x"01e0", x"01e3", x"01e7", x"01ea", x"01ed", x"01f0", x"01f3",
x"01f6", x"01f9", x"01fd", x"0200", x"0203", x"0206", x"0209", x"020c",
x"020f", x"0212", x"0216", x"0219", x"021c", x"021f", x"0222", x"0225",
x"0228", x"022c", x"022f", x"0232", x"0235", x"0238", x"023b", x"023e",
x"0242", x"0245", x"0248", x"024b", x"024e", x"0251", x"0254", x"0257",
x"025b", x"025e", x"0261", x"0264", x"0267", x"026a", x"026d", x"0270",
x"0274", x"0277", x"027a", x"027d", x"0280", x"0283", x"0286", x"028a",
x"028d", x"0290", x"0293", x"0296", x"0299", x"029c", x"029f", x"02a3",
x"02a6", x"02a9", x"02ac", x"02af", x"02b2", x"02b5", x"02b9", x"02bc",
x"02bf", x"02c2", x"02c5", x"02c8", x"02cb", x"02ce", x"02d2", x"02d5",
x"02d8", x"02db", x"02de", x"02e1", x"02e4", x"02e7", x"02eb", x"02ee",
x"02f1", x"02f4", x"02f7", x"02fa", x"02fd", x"0300", x"0304", x"0307",
x"030a", x"030d", x"0310", x"0313", x"0316", x"0319", x"031d", x"0320",
x"0323", x"0326", x"0329", x"032c", x"032f", x"0332", x"0336", x"0339",
x"033c", x"033f", x"0342", x"0345", x"0348", x"034b", x"034f", x"0352",
x"0355", x"0358", x"035b", x"035e", x"0361", x"0364", x"0368", x"036b",
x"036e", x"0371", x"0374", x"0377", x"037a", x"037d", x"0381", x"0384",
x"0387", x"038a", x"038d", x"0390", x"0393", x"0396", x"039a", x"039d",
x"03a0", x"03a3", x"03a6", x"03a9", x"03ac", x"03af", x"03b3", x"03b6",
x"03b9", x"03bc", x"03bf", x"03c2", x"03c5", x"03c8", x"03cb", x"03cf",
x"03d2", x"03d5", x"03d8", x"03db", x"03de", x"03e1", x"03e4", x"03e8",
x"03eb", x"03ee", x"03f1", x"03f4", x"03f7", x"03fa", x"03fd", x"0400",
x"0404", x"0407", x"040a", x"040d", x"0410", x"0413", x"0416", x"0419",
x"041d", x"0420", x"0423", x"0426", x"0429", x"042c", x"042f", x"0432",
x"0435", x"0439", x"043c", x"043f", x"0442", x"0445", x"0448", x"044b",
x"044e", x"0451", x"0455", x"0458", x"045b", x"045e", x"0461", x"0464",
x"0467", x"046a", x"046d", x"0471", x"0474", x"0477", x"047a", x"047d",
x"0480", x"0483", x"0486", x"0489", x"048d", x"0490", x"0493", x"0496",
x"0499", x"049c", x"049f", x"04a2", x"04a5", x"04a9", x"04ac", x"04af",
x"04b2", x"04b5", x"04b8", x"04bb", x"04be", x"04c1", x"04c5", x"04c8",
x"04cb", x"04ce", x"04d1", x"04d4", x"04d7", x"04da", x"04dd", x"04e0",
x"04e4", x"04e7", x"04ea", x"04ed", x"04f0", x"04f3", x"04f6", x"04f9",
x"04fc", x"04ff", x"0503", x"0506", x"0509", x"050c", x"050f", x"0512",
x"0515", x"0518", x"051b", x"051f", x"0522", x"0525", x"0528", x"052b",
x"052e", x"0531", x"0534", x"0537", x"053a", x"053e", x"0541", x"0544",
x"0547", x"054a", x"054d", x"0550", x"0553", x"0556", x"0559", x"055c",
x"0560", x"0563", x"0566", x"0569", x"056c", x"056f", x"0572", x"0575",
x"0578", x"057b", x"057f", x"0582", x"0585", x"0588", x"058b", x"058e",
x"0591", x"0594", x"0597", x"059a", x"059d", x"05a1", x"05a4", x"05a7",
x"05aa", x"05ad", x"05b0", x"05b3", x"05b6", x"05b9", x"05bc", x"05bf",
x"05c3", x"05c6", x"05c9", x"05cc", x"05cf", x"05d2", x"05d5", x"05d8",
x"05db", x"05de", x"05e1", x"05e5", x"05e8", x"05eb", x"05ee", x"05f1",
x"05f4", x"05f7", x"05fa", x"05fd", x"0600", x"0603", x"0606", x"060a",
x"060d", x"0610", x"0613", x"0616", x"0619", x"061c", x"061f", x"0622",
x"0625", x"0628", x"062b", x"062f", x"0632", x"0635", x"0638", x"063b",
x"063e", x"0641", x"0644", x"0647", x"064a", x"064d", x"0650", x"0654",
x"0657", x"065a", x"065d", x"0660", x"0663", x"0666", x"0669", x"066c",
x"066f", x"0672", x"0675", x"0678", x"067c", x"067f", x"0682", x"0685",
x"0688", x"068b", x"068e", x"0691", x"0694", x"0697", x"069a", x"069d",
x"06a0", x"06a4", x"06a7", x"06aa", x"06ad", x"06b0", x"06b3", x"06b6",
x"06b9", x"06bc", x"06bf", x"06c2", x"06c5", x"06c8", x"06cb", x"06cf",
x"06d2", x"06d5", x"06d8", x"06db", x"06de", x"06e1", x"06e4", x"06e7",
x"06ea", x"06ed", x"06f0", x"06f3", x"06f6", x"06f9", x"06fd", x"0700",
x"0703", x"0706", x"0709", x"070c", x"070f", x"0712", x"0715", x"0718",
x"071b", x"071e", x"0721", x"0724", x"0727", x"072a", x"072e", x"0731",
x"0734", x"0737", x"073a", x"073d", x"0740", x"0743", x"0746", x"0749",
x"074c", x"074f", x"0752", x"0755", x"0758", x"075b", x"075e", x"0762",
x"0765", x"0768", x"076b", x"076e", x"0771", x"0774", x"0777", x"077a",
x"077d", x"0780", x"0783", x"0786", x"0789", x"078c", x"078f", x"0792",
x"0795", x"0799", x"079c", x"079f", x"07a2", x"07a5", x"07a8", x"07ab",
x"07ae", x"07b1", x"07b4", x"07b7", x"07ba", x"07bd", x"07c0", x"07c3",
x"07c6", x"07c9", x"07cc", x"07cf", x"07d2", x"07d5", x"07d9", x"07dc",
x"07df", x"07e2", x"07e5", x"07e8", x"07eb", x"07ee", x"07f1", x"07f4",
x"07f7", x"07fa", x"07fd", x"0800", x"0803", x"0806", x"0809", x"080c",
x"080f", x"0812", x"0815", x"0818", x"081b", x"081e", x"0822", x"0825",
x"0828", x"082b", x"082e", x"0831", x"0834", x"0837", x"083a", x"083d",
x"0840", x"0843", x"0846", x"0849", x"084c", x"084f", x"0852", x"0855",
x"0858", x"085b", x"085e", x"0861", x"0864", x"0867", x"086a", x"086d",
x"0870", x"0873", x"0876", x"087a", x"087d", x"0880", x"0883", x"0886",
x"0889", x"088c", x"088f", x"0892", x"0895", x"0898", x"089b", x"089e",
x"08a1", x"08a4", x"08a7", x"08aa", x"08ad", x"08b0", x"08b3", x"08b6",
x"08b9", x"08bc", x"08bf", x"08c2", x"08c5", x"08c8", x"08cb", x"08ce",
x"08d1", x"08d4", x"08d7", x"08da", x"08dd", x"08e0", x"08e3", x"08e6",
x"08e9", x"08ec", x"08ef", x"08f2", x"08f5", x"08f8", x"08fb", x"08fe",
x"0901", x"0904", x"0908", x"090b", x"090e", x"0911", x"0914", x"0917",
x"091a", x"091d", x"0920", x"0923", x"0926", x"0929", x"092c", x"092f",
x"0932", x"0935", x"0938", x"093b", x"093e", x"0941", x"0944", x"0947",
x"094a", x"094d", x"0950", x"0953", x"0956", x"0959", x"095c", x"095f",
x"0962", x"0965", x"0968", x"096b", x"096e", x"0971", x"0974", x"0977",
x"097a", x"097d", x"0980", x"0983", x"0986", x"0989", x"098c", x"098f",
x"0992", x"0995", x"0998", x"099b", x"099e", x"09a1", x"09a4", x"09a7",
x"09aa", x"09ad", x"09b0", x"09b3", x"09b6", x"09b9", x"09bc", x"09bf",
x"09c2", x"09c5", x"09c8", x"09cb", x"09ce", x"09d1", x"09d4", x"09d7",
x"09da", x"09dd", x"09e0", x"09e3", x"09e6", x"09e9", x"09ec", x"09ef",
x"09f1", x"09f4", x"09f7", x"09fa", x"09fd", x"0a00", x"0a03", x"0a06",
x"0a09", x"0a0c", x"0a0f", x"0a12", x"0a15", x"0a18", x"0a1b", x"0a1e",
x"0a21", x"0a24", x"0a27", x"0a2a", x"0a2d", x"0a30", x"0a33", x"0a36",
x"0a39", x"0a3c", x"0a3f", x"0a42", x"0a45", x"0a48", x"0a4b", x"0a4e",
x"0a51", x"0a54", x"0a57", x"0a5a", x"0a5d", x"0a60", x"0a63", x"0a66",
x"0a69", x"0a6c", x"0a6f", x"0a72", x"0a74", x"0a77", x"0a7a", x"0a7d",
x"0a80", x"0a83", x"0a86", x"0a89", x"0a8c", x"0a8f", x"0a92", x"0a95",
x"0a98", x"0a9b", x"0a9e", x"0aa1", x"0aa4", x"0aa7", x"0aaa", x"0aad",
x"0ab0", x"0ab3", x"0ab6", x"0ab9", x"0abc", x"0abf", x"0ac2", x"0ac5",
x"0ac7", x"0aca", x"0acd", x"0ad0", x"0ad3", x"0ad6", x"0ad9", x"0adc",
x"0adf", x"0ae2", x"0ae5", x"0ae8", x"0aeb", x"0aee", x"0af1", x"0af4",
x"0af7", x"0afa", x"0afd", x"0b00", x"0b03", x"0b05", x"0b08", x"0b0b",
x"0b0e", x"0b11", x"0b14", x"0b17", x"0b1a", x"0b1d", x"0b20", x"0b23",
x"0b26", x"0b29", x"0b2c", x"0b2f", x"0b32", x"0b35", x"0b38", x"0b3a",
x"0b3d", x"0b40", x"0b43", x"0b46", x"0b49", x"0b4c", x"0b4f", x"0b52",
x"0b55", x"0b58", x"0b5b", x"0b5e", x"0b61", x"0b64", x"0b67", x"0b6a",
x"0b6c", x"0b6f", x"0b72", x"0b75", x"0b78", x"0b7b", x"0b7e", x"0b81",
x"0b84", x"0b87", x"0b8a", x"0b8d", x"0b90", x"0b93", x"0b95", x"0b98",
x"0b9b", x"0b9e", x"0ba1", x"0ba4", x"0ba7", x"0baa", x"0bad", x"0bb0",
x"0bb3", x"0bb6", x"0bb9", x"0bbc", x"0bbe", x"0bc1", x"0bc4", x"0bc7",
x"0bca", x"0bcd", x"0bd0", x"0bd3", x"0bd6", x"0bd9", x"0bdc", x"0bdf",
x"0be1", x"0be4", x"0be7", x"0bea", x"0bed", x"0bf0", x"0bf3", x"0bf6",
x"0bf9", x"0bfc", x"0bff", x"0c02", x"0c04", x"0c07", x"0c0a", x"0c0d",
x"0c10", x"0c13", x"0c16", x"0c19", x"0c1c", x"0c1f", x"0c22", x"0c24",
x"0c27", x"0c2a", x"0c2d", x"0c30", x"0c33", x"0c36", x"0c39", x"0c3c",
x"0c3f", x"0c41", x"0c44", x"0c47", x"0c4a", x"0c4d", x"0c50", x"0c53",
x"0c56", x"0c59", x"0c5c", x"0c5e", x"0c61", x"0c64", x"0c67", x"0c6a",
x"0c6d", x"0c70", x"0c73", x"0c76", x"0c79", x"0c7b", x"0c7e", x"0c81",
x"0c84", x"0c87", x"0c8a", x"0c8d", x"0c90", x"0c93", x"0c95", x"0c98",
x"0c9b", x"0c9e", x"0ca1", x"0ca4", x"0ca7", x"0caa", x"0cad", x"0caf",
x"0cb2", x"0cb5", x"0cb8", x"0cbb", x"0cbe", x"0cc1", x"0cc4", x"0cc6",
x"0cc9", x"0ccc", x"0ccf", x"0cd2", x"0cd5", x"0cd8", x"0cdb", x"0cdd",
x"0ce0", x"0ce3", x"0ce6", x"0ce9", x"0cec", x"0cef", x"0cf2", x"0cf4",
x"0cf7", x"0cfa", x"0cfd", x"0d00", x"0d03", x"0d06", x"0d09", x"0d0b",
x"0d0e", x"0d11", x"0d14", x"0d17", x"0d1a", x"0d1d", x"0d1f", x"0d22",
x"0d25", x"0d28", x"0d2b", x"0d2e", x"0d31", x"0d34", x"0d36", x"0d39",
x"0d3c", x"0d3f", x"0d42", x"0d45", x"0d48", x"0d4a", x"0d4d", x"0d50",
x"0d53", x"0d56", x"0d59", x"0d5c", x"0d5e", x"0d61", x"0d64", x"0d67",
x"0d6a", x"0d6d", x"0d70", x"0d72", x"0d75", x"0d78", x"0d7b", x"0d7e",
x"0d81", x"0d83", x"0d86", x"0d89", x"0d8c", x"0d8f", x"0d92", x"0d95",
x"0d97", x"0d9a", x"0d9d", x"0da0", x"0da3", x"0da6", x"0da8", x"0dab",
x"0dae", x"0db1", x"0db4", x"0db7", x"0db9", x"0dbc", x"0dbf", x"0dc2",
x"0dc5", x"0dc8", x"0dca", x"0dcd", x"0dd0", x"0dd3", x"0dd6", x"0dd9",
x"0ddb", x"0dde", x"0de1", x"0de4", x"0de7", x"0dea", x"0dec", x"0def",
x"0df2", x"0df5", x"0df8", x"0dfb", x"0dfd", x"0e00", x"0e03", x"0e06",
x"0e09", x"0e0c", x"0e0e", x"0e11", x"0e14", x"0e17", x"0e1a", x"0e1c",
x"0e1f", x"0e22", x"0e25", x"0e28", x"0e2b", x"0e2d", x"0e30", x"0e33",
x"0e36", x"0e39", x"0e3b", x"0e3e", x"0e41", x"0e44", x"0e47", x"0e49",
x"0e4c", x"0e4f", x"0e52", x"0e55", x"0e58", x"0e5a", x"0e5d", x"0e60",
x"0e63", x"0e66", x"0e68", x"0e6b", x"0e6e", x"0e71", x"0e74", x"0e76",
x"0e79", x"0e7c", x"0e7f", x"0e82", x"0e84", x"0e87", x"0e8a", x"0e8d",
x"0e90", x"0e92", x"0e95", x"0e98", x"0e9b", x"0e9e", x"0ea0", x"0ea3",
x"0ea6", x"0ea9", x"0eac", x"0eae", x"0eb1", x"0eb4", x"0eb7", x"0eb9",
x"0ebc", x"0ebf", x"0ec2", x"0ec5", x"0ec7", x"0eca", x"0ecd", x"0ed0",
x"0ed3", x"0ed5", x"0ed8", x"0edb", x"0ede", x"0ee0", x"0ee3", x"0ee6",
x"0ee9", x"0eec", x"0eee", x"0ef1", x"0ef4", x"0ef7", x"0ef9", x"0efc",
x"0eff", x"0f02", x"0f05", x"0f07", x"0f0a", x"0f0d", x"0f10", x"0f12",
x"0f15", x"0f18", x"0f1b", x"0f1e", x"0f20", x"0f23", x"0f26", x"0f29",
x"0f2b", x"0f2e", x"0f31", x"0f34", x"0f36", x"0f39", x"0f3c", x"0f3f",
x"0f41", x"0f44", x"0f47", x"0f4a", x"0f4d", x"0f4f", x"0f52", x"0f55",
x"0f58", x"0f5a", x"0f5d", x"0f60", x"0f63", x"0f65", x"0f68", x"0f6b",
x"0f6e", x"0f70", x"0f73", x"0f76", x"0f79", x"0f7b", x"0f7e", x"0f81",
x"0f84", x"0f86", x"0f89", x"0f8c", x"0f8f", x"0f91", x"0f94", x"0f97",
x"0f9a", x"0f9c", x"0f9f", x"0fa2", x"0fa4", x"0fa7", x"0faa", x"0fad",
x"0faf", x"0fb2", x"0fb5", x"0fb8", x"0fba", x"0fbd", x"0fc0", x"0fc3",
x"0fc5", x"0fc8", x"0fcb", x"0fce", x"0fd0", x"0fd3", x"0fd6", x"0fd8",
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -