亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? dec.vhd

?? it is used to understand the basic working of a BCH encoder/Decoder
?? VHD
?? 第 1 頁 / 共 3 頁
字號:
-- File generated by bch.exe program.
-- The decoder for BCH code (15,5), t=3
-- Option= 3,  Interleave= 2, -- with optimisation.
-- GF(2^4) is generated by polynomial [1+x+...] - 11001;
 
-- COMMON option drd invCe dinv DualOne dpdbm dcount
-------------------------------------------------------------------
-- 2-1 multiplexer

	USE WORK.const.ALL;
ENTITY dmul21 IS
PORT ( sel: IN BIT;
	d0, d1: IN BIT_VECTOR(0 TO m-1); 
	dout: OUT BIT_VECTOR(0 TO m-1));  
END dmul21;

ARCHITECTURE dmul21a OF dmul21 IS
  BEGIN
	gen:
	FOR i IN 0 TO m-1 GENERATE
	  dout(i)<= (NOT sel AND d0(i)) OR (sel AND d1(i));
	END GENERATE;
END dmul21a;

--------------------------------------------------------------------
-- single register with clock enable

ENTITY drd1ce IS
PORT ( clk, ce, din: IN BIT; 
	dout: OUT BIT);  
END drd1ce;

ARCHITECTURE drd1cea OF drd1ce IS
	SIGNAL q: BIT;
  BEGIN
	dout<= q;
  PROCESS BEGIN
	WAIT UNTIL clk'EVENT AND clk='1';
	IF ce='1' THEN
		q<= din;
	ELSE
		q<= q;
	END IF;
  END PROCESS;
END drd1cea;

--------------------------------------------------------------------
-- PIPO registers m bits wide with clock enable and reset

	USE WORK.const.ALL;
ENTITY drdcer IS
PORT ( clk, ce, reset: IN BIT;
	din: IN BIT_VECTOR(0 TO m-1); 
	dout: OUT BIT_VECTOR(0 TO m-1));  
END drdcer;

ARCHITECTURE drdcera OF drdcer IS
	SIGNAL q: BIT_VECTOR(0 TO m-1);
  BEGIN
	dout<= q;
  PROCESS BEGIN
	WAIT UNTIL clk'EVENT AND clk='1';
	FOR i IN 0 TO m-1 LOOP
	  IF reset='1' THEN
		q(i)<= '0';
	  ELSIF ce='1' THEN
		q(i)<= din(i);
          ELSE 
		q(i)<= q(i);
	  END IF;
	END LOOP;
  END PROCESS;
END drdcera;

--------------------------------------------------------------------
-- PIPO registers m bits wide with clock enable and set to one

	USE WORK.const.ALL;
ENTITY drdceSOne IS
PORT ( clk, ce, set, dinone: IN BIT;
	din: IN BIT_VECTOR(0 TO m-1); 
	dout: OUT BIT_VECTOR(0 TO m-1));  
END drdcesone;

ARCHITECTURE drdcesonea OF drdcesone IS
	SIGNAL q: BIT_VECTOR(0 TO m-1);
  BEGIN
	dout<= q;
  PROCESS BEGIN
	WAIT UNTIL clk'EVENT AND clk='1';
	IF set='1' THEN 
		q(0)<= dinone;
	ELSIF ce='1' THEN
		q(0)<= din(0);
	ELSE
		q(0)<= q(0);
	END IF;
	
	FOR i IN 1 TO m-1 LOOP
	  IF set='1' THEN
		q(i)<= '0';
	  ELSIF ce='1' THEN
		q(i)<= din(i);
	  ELSE
		q(i)<= q(i);
          END IF;
	END LOOP;
  END PROCESS;
END drdcesonea;


--------------------------------------------------------------------
-- m registers with clock enable

	USE WORK.const.ALL;
ENTITY drdce IS
PORT ( clk, ce: IN BIT;
	din: IN BIT_VECTOR(0 TO m-1); 
	dout: OUT BIT_VECTOR(0 TO m-1));  
END drdce;

ARCHITECTURE drdcea OF drdce IS
	SIGNAL q: BIT_VECTOR(0 TO m-1);
  BEGIN
	dout<= q;
  PROCESS BEGIN
	WAIT UNTIL clk'EVENT AND clk='1';
	IF ce='1' THEN
		q<= din;
	ELSE
		q<= q;
	END IF;
  END PROCESS;
END drdcea;
--------------------------------------------------------------------
-- PIPO registers m bits wide

	USE WORK.const.ALL;
ENTITY drd IS
PORT (clk: IN BIT;
	din: IN BIT_VECTOR(0 TO m-1); 
	dout: OUT BIT_VECTOR(0 TO m-1));  
END drd;

ARCHITECTURE drda OF drd IS
	SIGNAL q: BIT_VECTOR(0 TO m-1);
  BEGIN
	dout<= q;
  PROCESS BEGIN
	WAIT UNTIL clk'EVENT AND clk='1';
	q<= din;
  END PROCESS;
END drda;

-- sumator m * XOR; dout<= din0 XOR din1

	USE WORK.const.ALL;
ENTITY dxorm IS
PORT (din0, din1: IN BIT_VECTOR(0 TO m-1);
	dout: OUT BIT_VECTOR(0 TO m-1));
END dxorm;

ARCHITECTURE dxorma OF dxorm IS
  BEGIN
	dout<= din0 XOR din1;
END dxorma;

-----------------------------------------------------------------

--------------- OPTION 3 -serial
-------------------------------------------------------------------
-- Serial In Parallel Out m bits shift register

	USE WORK.const.ALL;
ENTITY dsipo IS
PORT (clk, din: IN BIT;
	dout: OUT BIT_VECTOR(0 TO m-1)); 
END dsipo;

ARCHITECTURE dsipoa OF dsipo IS
	SIGNAL q: BIT_VECTOR(0 TO m-1);
  BEGIN
	dout<= q;
  PROCESS BEGIN
	WAIT UNTIL clk'EVENT AND clk='1';
	q<= din & q(0 TO m-2);
  END PROCESS;
END dsipoa;

-------------------------------------------------------------------
-- Shift refister with serilial XOR, and parallel in

	USE WORK.const.ALL;
ENTITY dshpe IS
PORT (clk, ce, pe: IN BIT;
	din: IN BIT_VECTOR(0 TO m-1); -- parallel in
	dout: OUT BIT_VECTOR(0 TO m-1)); 
END dshpe;

ARCHITECTURE dshpea OF dshpe IS
	SIGNAL ring: BIT_VECTOR(0 TO m-1);
  BEGIN
	dout<= ring;
  PROCESS BEGIN
	WAIT UNTIL clk'EVENT AND clk='1';
	IF pe= '1' THEN
	  ring<= din;	
	ELSIF ce='1' THEN
	  ring<= ring(m-1) & ring(0 TO m-2);
	END IF;
  END PROCESS;
END dshpea;

-------------------------------------------------------------------
-- Shift refister with serilial XOR, and reset

	USE WORK.const.ALL;
ENTITY dshr IS
PORT (clk, ce, reset, din: IN BIT;
	dout: OUT BIT_VECTOR(0 TO m-1)); 
END dshr;

ARCHITECTURE dshra OF dshr IS
	SIGNAL ring: BIT_VECTOR(0 TO m-1);
	SIGNAL dmul1: BIT;
  BEGIN
	dout<= ring;
	dmul1<= ring(m-1) XOR din;
  PROCESS BEGIN
	WAIT UNTIL clk'EVENT AND clk='1';
	IF reset='1' THEN 
	  ring(0)<= '0';
	ELSIF ce='1' THEN 
	  ring(0)<= ring(m-1) XOR din;
	END IF;	

	FOR i IN 1 TO m-1 LOOP
	  IF reset= '1' THEN
	    ring(i)<= '0';	
	  ELSIF ce='1' THEN
	    ring(i)<= ring(i-1);
	  END IF;
	END LOOP;
  END PROCESS;
END dshra;

---------------------------------------------------------------------
-- dout<= en And din

	USE WORK.const.ALL;
ENTITY dandm IS
PORT (en: IN BIT;
	din: IN BIT_VECTOR(0 TO m-1);
	dout: OUT BIT_VECTOR(0 TO m-1)); 
END dandm;

ARCHITECTURE dandma OF dandm IS
  BEGIN
	gen:
	FOR i IN 0 TO m-1 GENERATE
	  dout(i)<= din(i) AND en;
	END GENERATE;
END dandma;


---------------------------------------------------------------------
---------------------------------------------------------------------
-- buffer circuit

	USE WORK.const.ALL;
ENTITY dbuf IS
PORT (clk, bufCe, bufkCe, err, vdout1, din: IN BIT;
	dout: OUT BIT); 
END dbuf;

ARCHITECTURE dbufa OF dbuf IS
	CONSTANT buf_size: INTEGER:= 5; 
	-- buf_size= chpe/interleave + 2 if buf_size<k+1; else buf_size= k 
	SIGNAL bufk: BIT_VECTOR(0 TO k-1); 
	-- bufk - first buffor for storing only first k bits
	SIGNAL buf: BIT_VECTOR(0 TO buf_size-1); -- second buffor
  BEGIN
  PROCESS BEGIN
	WAIT UNTIL clk'EVENT AND clk='1';
	IF bufCe='1' THEN
		buf<= bufk(k-1) & buf(0 TO buf_size-2);
	END IF;
	IF bufkCe='1' THEN
		bufk<= din & bufk(0 TO k-2);
	END IF;
	dout<= (buf(buf_size-1) XOR err) AND vdout1;
  END PROCESS;
END dbufa;

-----------------------------------------------------------------
-- Bit-Serial Berlekamp (Dual Basis) Multiplier without registers

	USE WORK.const.ALL;
ENTITY dsdbm IS
PORT (dbin, sbin: IN BIT_VECTOR(0 TO m-1); -- standard & dual basis input
	dout: OUT BIT); -- serial output 
END dsdbm;

ARCHITECTURE dsdbma OF dsdbm IS
	SIGNAL dxor: BIT_VECTOR(0 TO m-1); -- xor gates signals
  BEGIN
	dout<= dxor(m-1);
	dxor(0)<= sbin(0) AND dbin(0);
	gen:
	FOR i IN 1 TO m-1 GENERATE
	  dxor(i)<= dxor(i-1) XOR (sbin(i) AND dbin(i));
	END GENERATE;
END dsdbma;

-----------------------------------------------------------------
--  Bit-Serial Berlekamp (Dual Basis) Multiplier LFSR

	USE WORK.const.ALL;
ENTITY dsdbmRing IS
PORT (clk, pe: IN BIT;   -- pe- parellel enable
	din: IN BIT_VECTOR(0 TO m-1); -- dual basis input
	dout: OUT BIT_VECTOR(0 TO m-1)); 
END dsdbmRing;

ARCHITECTURE dsdbmRinga OF dsdbmRing IS
	SIGNAL ring: BIT_VECTOR(0 TO m-1); 
  BEGIN
	dout<= ring;
  PROCESS BEGIN
	WAIT UNTIL clk'EVENT AND clk='1';
	IF pe='1' THEN 
	  ring<= din;
	ELSE
	  ring(0 TO m-2)<= ring(1 TO m-1);
	  ring(m-1)<= ring(0) XOR ring(1);
	END IF;
  END PROCESS;
END dsdbmRinga;

-------------------------------------------------------------------
-- Bit-Parallel Dual-Basis Multiplier

	USE WORK.const.ALL;
ENTITY dpdbm IS
PORT (ddin, dsin: IN BIT_VECTOR(0 TO m-1); 
	dout: OUT BIT_VECTOR(0 TO m-1));  
END dpdbm;

ARCHITECTURE dpdbma OF dpdbm IS
	COMPONENT dsdbm -- Serial Dual Basis Multiplier without registers
	  PORT (dbin, sbin: IN BIT_VECTOR(0 TO m-1); 
	  	  -- dual & standard basis in
		dout: OUT BIT); 
	  END COMPONENT;
	  FOR ALL: dsdbm USE ENTITY WORK.dsdbm (dsdbma);

	SIGNAL aux: BIT_VECTOR(0 TO m-2); -- auxuliary signals
	SIGNAL m0in, m1in, m2in, m3in: BIT_VECTOR(0 TO m-1);
  BEGIN
	aux(0)<= ddin(0) XOR ddin(1);
	aux(1)<= ddin(1) XOR ddin(2);
	aux(2)<= ddin(2) XOR ddin(3);
	m0in<= ddin(0) & ddin(1) & ddin(2) & ddin(3);
	m1in<= ddin(1) & ddin(2) & ddin(3) & aux(0);
	m2in<= ddin(2) & ddin(3) & aux(0) & aux(1);
	m3in<= ddin(3) & aux(0) & aux(1) & aux(2);
	m0:  dsdbm
		PORT MAP (m0in, dsin, dout(0));
	m1:  dsdbm
		PORT MAP (m1in, dsin, dout(1));
	m2:  dsdbm
		PORT MAP (m2in, dsin, dout(2));
	m3:  dsdbm
		PORT MAP (m3in, dsin, dout(3));

END dpdbma; 

-------------------------------------------------------------------
-- Bit-Parallel Multiplier 

	USE WORK.const.ALL;
ENTITY dpm IS
PORT (din1, din2: IN BIT_VECTOR(0 TO m-1); 
	dout: OUT BIT_VECTOR(0 TO m-1));  
END dpm;

ARCHITECTURE dpma OF dpm IS
	COMPONENT dsdbm -- Serial Dual Basis Multiplier without registers
	  PORT (dbin, sbin: IN BIT_VECTOR(0 TO m-1); 
	  	  -- dual & standard basis in
		dout: OUT BIT); 
	  END COMPONENT;
	  FOR ALL: dsdbm USE ENTITY WORK.dsdbm (dsdbma);

	SIGNAL b: BIT_VECTOR(0 TO 6);
	SIGNAL c0, c1, c2, c3: BIT_VECTOR(0 TO m-1);
  BEGIN
	b(0 TO m-1)<= din1;
	b(4)<= b(0) XOR b(3);
	b(5)<= b(3) XOR b(2);
	b(6)<= b(2) XOR b(1);
	c0<= b(0) & b(3) & b(2) & b(1);
	m0: dsdbm
		PORT MAP (din2, c0, dout(0));
	c1<= b(1) & b(4) & b(5) & b(6);
	m1: dsdbm
		PORT MAP (din2, c1, dout(1));
	c2<= b(2) & b(1) & b(4) & b(5);
	m2: dsdbm
		PORT MAP (din2, c2, dout(2));
	c3<= b(3) & b(2) & b(1) & b(4);
	m3: dsdbm
		PORT MAP (din2, c3, dout(3));

END dpma;

----------------------------------------------------------------------------------
-- Bit-Serial Standard Basis Multiplier for syn*c=dr module2 - ring

	USE WORK.const.ALL;
ENTITY dssbm IS
PORT (clk, ce, pe : IN BIT;
	din: IN BIT_VECTOR(0 TO m-1); 
	dout: OUT BIT_VECTOR(0 TO m-1)); 
END dssbm;

ARCHITECTURE dssbma OF dssbm IS
	SIGNAL ring: BIT_VECTOR(0 TO m-1);
  BEGIN
	dout<= ring;
  PROCESS BEGIN
      WAIT UNTIL clk'EVENT AND clk='1';
      IF pe='1' THEN 
	ring<= din;
      ELSIF ce='1' THEN
	ring(0)<= din(0) XOR (NOT pe AND ring(m-1));
	ring(1)<= din(1) XOR (NOT pe AND (ring(m-1) XOR ring(0)));
	ring(2)<= din(2) XOR (NOT pe AND ring(1));
	ring(3)<= din(3) XOR (NOT pe AND ring(2));
      END IF;
  END PROCESS;
END dssbma;	

-------------------------------------------------------------------
-- sumator t* XOR - dout= din(0) xor din(1) .... xor din(t)

	USE WORK.const.ALL;
ENTITY dxort IS
PORT (din0, din1, din2, din3: IN BIT;
	dout: OUT BIT);
END dxort;

ARCHITECTURE dxorta OF dxort IS
  BEGIN
	dout<= din0 XOR din1 XOR din2 XOR din3;

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩va亚洲va欧美va久久| 另类综合日韩欧美亚洲| 欧美成人精品福利| 91美女视频网站| 国产曰批免费观看久久久| 亚洲图片有声小说| 国产精品女主播av| 久久综合色之久久综合| 欧美视频一二三区| 不卡欧美aaaaa| 国产一区二区三区黄视频| 日韩精品一级中文字幕精品视频免费观看 | 日韩av电影免费观看高清完整版 | 久久综合色8888| 欧美日韩成人综合| 91香蕉视频污| 丁香激情综合国产| 国产剧情av麻豆香蕉精品| 免费观看在线综合| 午夜精品久久久久久久99樱桃| 中文字幕一区二区三区乱码在线| 精品国产一区二区精华| 制服.丝袜.亚洲.中文.综合| 欧美性videosxxxxx| 在线视频一区二区三| 99久久99久久综合| 成人av免费在线观看| 成人免费看的视频| 国产精品一二一区| 国产ts人妖一区二区| 国产精品77777| 国产精品 日产精品 欧美精品| 激情五月婷婷综合| 久久99久久99| 国产一区二区三区在线观看免费| 六月婷婷色综合| 精品系列免费在线观看| 久久成人久久爱| 国产一区二区三区四| 国产在线视频精品一区| 国产一区二区三区日韩| 国产成人啪免费观看软件| 国产a区久久久| 成人黄色大片在线观看| 99视频一区二区| 色综合久久88色综合天天| 在线观看一区二区精品视频| 欧美色精品在线视频| 欧美群妇大交群中文字幕| 91精品久久久久久久99蜜桃| 日韩无一区二区| 精品免费99久久| 中文一区二区完整视频在线观看| 国产精品视频一区二区三区不卡| 国产精品久久久久7777按摩| 亚洲少妇屁股交4| 亚洲高清免费观看| 久久成人久久爱| 日韩精品一区二区三区四区视频| 日韩一卡二卡三卡四卡| 国产亚洲欧美色| 综合欧美亚洲日本| 日韩精品国产精品| 狠狠色伊人亚洲综合成人| 国产a级毛片一区| 91精品办公室少妇高潮对白| 欧美亚洲综合网| 精品久久久三级丝袜| 国产精品家庭影院| 天堂蜜桃91精品| 国产一区二区三区香蕉| 色域天天综合网| 91精品国产aⅴ一区二区| 久久午夜国产精品| 亚洲一区二区三区四区五区黄| 久久爱www久久做| 99re这里只有精品视频首页| 在线电影欧美成精品| 久久精品视频一区二区| 亚洲一区二区三区精品在线| 黄色资源网久久资源365| 91在线丨porny丨国产| 欧美一区二区三区免费视频 | 国产精品毛片久久久久久久| 亚洲国产一区二区三区青草影视 | 久久精品国产一区二区三 | 99久久国产综合色|国产精品| 欧美性三三影院| 国产偷国产偷亚洲高清人白洁| 亚洲一区二区影院| 国产成人精品免费视频网站| 欧美日韩一区二区三区视频| 国产亚洲综合色| 日本三级韩国三级欧美三级| 97se亚洲国产综合自在线观| 日韩免费在线观看| 亚洲一区二区三区激情| 国产成人福利片| 91精品免费在线| 一区二区三区四区蜜桃| 国产成人综合亚洲91猫咪| 日韩视频一区二区在线观看| 一区二区三区日韩在线观看| 国产成人精品影院| 欧美成人猛片aaaaaaa| 亚洲一区二区视频在线观看| 99精品久久久久久| 欧美激情一区二区三区在线| 九九精品视频在线看| 欧美人牲a欧美精品| 亚洲综合清纯丝袜自拍| av福利精品导航| 国产网站一区二区| 国产在线视频精品一区| 欧美一区二区三区性视频| 夜夜嗨av一区二区三区中文字幕 | 黄色日韩三级电影| 日韩三级视频在线观看| 亚洲一区二区欧美| 欧美在线视频不卡| 亚洲啪啪综合av一区二区三区| 国产91综合网| 国产日韩欧美不卡| 国产v综合v亚洲欧| 日本一区二区三区久久久久久久久不 | 一区二区三区国产豹纹内裤在线 | 欧美日韩在线精品一区二区三区激情| 国产精品久久久久婷婷| 成人av午夜影院| 亚洲视频你懂的| 91影院在线免费观看| 国产精品初高中害羞小美女文 | 制服丝袜亚洲播放| 天堂影院一区二区| 777a∨成人精品桃花网| 日韩国产精品91| 欧美丰满美乳xxx高潮www| 婷婷综合久久一区二区三区| 91精品久久久久久蜜臀| 久久精品国产**网站演员| 欧美xxxxxxxxx| 精品午夜久久福利影院| 久久精品一区二区三区av| 国产激情视频一区二区在线观看| 久久精品亚洲精品国产欧美| 成人性生交大片免费看在线播放| 中文字幕成人在线观看| 不卡一二三区首页| 尤物av一区二区| 欧美精品在线观看播放| 麻豆freexxxx性91精品| 久久精品视频免费观看| 99久久精品免费看国产免费软件| 亚洲欧洲综合另类| 欧美浪妇xxxx高跟鞋交| 裸体在线国模精品偷拍| 欧美激情中文不卡| 91国在线观看| 久久国产视频网| 国产精品久久久久久亚洲伦| 色94色欧美sute亚洲线路一ni| 午夜视频在线观看一区| 欧美成人精品二区三区99精品| 懂色av中文字幕一区二区三区| 亚洲人成精品久久久久久 | www成人在线观看| 成人h版在线观看| 亚洲小少妇裸体bbw| 日韩欧美电影在线| av亚洲精华国产精华精华| 亚洲在线视频网站| 久久婷婷国产综合精品青草| 91影院在线免费观看| 免费观看在线综合色| 欧美国产国产综合| 欧美在线观看一区二区| 久久精品99久久久| 亚洲婷婷综合色高清在线| 91麻豆精品国产91久久久使用方法 | 免费av网站大全久久| 中文字幕乱码一区二区免费| 欧美日韩日日摸| 国产98色在线|日韩| 日韩国产精品久久久久久亚洲| 国产精品国产三级国产aⅴ原创| 678五月天丁香亚洲综合网| 国产91精品欧美| 秋霞电影网一区二区| **网站欧美大片在线观看| 91精品国产色综合久久不卡蜜臀| 国产91精品露脸国语对白| 日韩高清电影一区| 国产精品传媒入口麻豆| 91精品国产色综合久久ai换脸 | 日韩中文字幕亚洲一区二区va在线| 国产欧美日韩三级| 欧美刺激脚交jootjob| 色偷偷88欧美精品久久久| 国产电影一区二区三区| 久久成人麻豆午夜电影|