8b10b编码的verilog实现代码,非查表代码。
此代码是8b10b编码的verilog实现代码,非查表代码。
此代码在项目中,已经使用多次,相当成熟。
module 8b10b_encode (datain, dispin, dataout, dispout) ;
input wire [8:0] datain ;
input wire dispin ; // 0 = neg disp; 1 = pos disp
output wire [9:0] dataout ;
output wire dispout ;
wire ai = datain[0] ;
wire bi = datain[1] ;
wire ci = datain[2] ;
wire di = datain[3] ;
wire ei = datain[4] ;
wire fi = datain[5] ;
wire gi = datain[6] ;
wire hi = datain[7] ;
wire ki = datain[8] ;
wire aeqb = (ai & bi) | (!ai & !bi) ;
wire ceqd = (ci & di) | (!ci & !di) ;
wire l22 = (ai & bi & !ci & !di) |
(ci & di & !ai & !bi) |
( !aeqb & !ceqd) ;
wire l40 = ai & bi & ci & di ;
wire l04 = !ai & !bi & !ci
一个fpga的从事工作者。