久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 循環冗余校驗碼的單片機及CPLD實現

循環冗余校驗碼的單片機及CPLD實現

作者: 時間:2012-03-20 來源:網絡 收藏

4 冗余碼的

冗余碼的硬件,其速度更快,性能更好,而且只占用極少的內的資源。本人用Xilinx公司的XCV9536芯片,基于以下VHDL 代碼,了8位CRC碼生成電路。代碼下VHDL代碼,實現了8位CRC碼生成電路。代碼中,s_in為輸入串行數據,q為輸出CRC碼,d_new為當前CRC碼。
Library IEEE;
use IEEE.std_logic_1164.all;
entity crc is
port(clk,s_in,reset:in STD_LOGIC,q:out STD_LOGIC_VECTOR (7 downto 0));
end crc;
architecture crc_arch of crc is
signal t1,t2,t3:std_logic;
signal d_new:std_logic_vector(7 downto 0);
begin
t1=d_new(0)xor s_in; --t1為最低位與輸入異或值
t2=d_new(4)xor '1';
t3=d_new(3)xor'1';
process(clk,reset)
begin
if clk event and clk='1'then
if reset='1'then
d_new=x0; --復位時,CRC碼置零
elsif t1='1'then
d_new=t1d_new(7 downto 5)t2t3td_new(2 downto 1);--t1為1時的新CRC碼
elsif t1='0'then
d_new=t1d_new(7 downto 1); --t1為0時的新CRC碼
end if;
end if;
end process;
q=d_new;--輸出CRC碼
end crc_arch;

5 總結

基于以上介紹的8位冗余碼的軟件及硬件實現方法,可以設計各種類型的循環冗余校檢方法。由上述例程可以看出,循環冗余碼校驗是一種可靠性高、易于實現的校驗方法。


上一頁 1 2 下一頁

評論


相關推薦

技術專區

關閉