资源描述:
《赛灵思FPGA的SRL16移位寄存器原理与使用.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、赛灵思FPGA的SRL16移位寄存器原理与使用 可以定义移位长度的移位寄存器。就是用一个lut可以实现16位的移位寄存器。 SRL16的是16bit移位寄存器查找表//16-BitShiftRegisterLook-Up-Table(LUT) 在一个LUT中可以实现16个FF移位的功能!SSRL16SRL16_inst(.Q(Q),//SRLdataoutput.A0(A0),//Select[0]input.A1(A1),//Select[1]input.A2(A2),//Select[2]input.A3(A3),//Sel
2、ect[3]input.CLK(CLK),//Clockinput.D(D)//SRLdatainput); Xilinx官网的说明——原理 SRL16isashiftregisterlookuptable(LUT).TheinputsA3,A2,A1,andA0selecttheoutputlengthoftheshiftregister.Theshiftregistermaybeofafixed,staTIclengthoritmaybedynamicallyadjusted. TheshiftregisterLUTco
3、ntentsareiniTIalizedbyassigningafour-digithexadecimalnumbertoanINITattribute.Thefirst,ortheleft-most,hexadecimaldigitisthemostsignificantbit.IfanINITvalueisnotspecified,itdefaultstoavalueoffourzeros(0000)sothattheshiftregisterLUTisclearedduringconfiguraTIon.Thedata(D)is
4、loadedintothefirstbitoftheshiftregisterduringtheLow-to-Highclock(CLK)transiTIon.DuringsubsequentLow-to-Highclocktransitionsdataisshiftedtothenexthighestbitpositionasnewdataisloaded.ThedataappearsontheQoutputwhentheshiftregisterlengthdeterminedbytheaddressinputsisreached
5、. 这里说了几点,-移位寄存器的初始值可以用INIT属性初始化;-移位寄存器的长度由地址线的取值决定;-移位数据从D端输入,Q端输出 -先移入的数据是MSB Xilinx官网的说明——StaticLengthModeTogetafixedlengthshiftregister,drivetheA3throughA0inputswithstaticvalues.Thelengthoftheshiftregistercanvaryfrom1bitto16bitsasdeterminedfromthefollowingformula:
6、 Length=(8*A3)+(4*A2)+(2*A1)+A0+1 IfA3,A2,A1,andA0areallzeros(0000),theshiftregisterisonebitlong.Iftheyareallones(1111),itis16bitslong. Xilinx官网的说明——DynamicLengthModeThelengthoftheshiftregistercanbechangeddynamicallybychangingthevaluesdrivingtheA3throughA0inputs.Fore
7、xample,ifA2,A1,andA0areallones(111)andA3togglesbetweenaone(1)andazero(0),thelengthoftheshiftregisterchangesfrom16bitsto8bits. Internally,thelengthoftheshiftregisterisalways16bitsandtheinputlinesA3throughA0selectwhichofthe16bitsreachtheoutput. InputsOutput AmCLKDQAmXX
8、Q(Am)Am↑DQ(Am-1)m=0,1,2,3 这里提示了几个要点: -移位寄存器是可变长度的-长度的改变由地址线来指定-内部的寄存器长度是不变的,只是截取的长度变了 -数据先移入到A0,然后到A1,以此类推,