基于并行流水线结构的可重配FIR滤波器的FPGA实现_第1页
基于并行流水线结构的可重配FIR滤波器的FPGA实现_第2页
基于并行流水线结构的可重配FIR滤波器的FPGA实现_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、    基于并行流水线结构的可重配FIR滤波器的FPGA实现    基于并行流水线结构的可重配FIR滤波器的FPGA实现    类别:测试仪表                             

2、 &nbsp来源:微计算机信息 作者:黄丽薇 喻强 王静        &nbsp摘 要: 可编程逻辑器件CPLD体积小功能强大, Verilog HDL语言简练,设计思想、电路结构和逻辑关系清晰,本文着重介绍使用Verilog设计CPLD实现双屏显示液晶控制器的功能。         &nbsp关键词: Verilog CPLD 液晶控制器        

3、60;&nbsp1.引言        &nbsp随着集成电路技术的发展, 在现代电子设计中,可编程逻辑器件的运用越来越多,原因在于其规模大,体积小,功能强,价格便宜。CPLD可擦写上万次,使得硬件设计像软件设计一样灵活方便。Verilog HDL语言作为硬件描述语言有其独特的优势:在门级描述的底层,描述的设计思想、电路结构和逻辑关系清晰明了,设计语言简练、易学易用,模块化分层结构在大规模设计时具有优势。如果使用Verilog把控制功能集成在一片CPLD芯片里,整个电路将会变得更简洁、实用。  &#

4、160;      &nbsp2.液晶控制器原理        &nbsp液晶控制器用于单片机和液晶屏的接口,一方面不断地把显存的数据刷新到液晶屏上,另一方面控制单片机对显存数据的更新。        &nbsp双屏结构液晶控制器内部主要的计数器,分别是4bit时钟同步字符计数器、行计数器和帧计数器,它们在系统时钟FCLK的控制下同时计数,主要是用来产生行同步信号LP 和帧同步信号F

5、P ,分别用来控制液晶屏换行和换页。液晶屏就是在这三个信号的控制下反复地把显存里的数据刷新到屏幕上。        &nbsp本设计采用Altera 公司生产的EPM7128SCPLD芯片来实现LCD 控制器以及它的外围逻辑时序的全部功能,使用的液晶屏为640×480双屏显示结构,即上半屏和下半屏同时显示,RAM为一片SRM20512LLTM78(62512)。      液晶屏刷新速度的计算公式为FFRP = FCLK/ ( Hn×Nx )。 &

6、#160;   其中,FFRP为液晶屏显示帧扫描频率,一般要大于70 Hz ,Hn为一行显示的4bit同步字符数640/4=160,Nx为一屏帧扫描的行数480/2=240,FCLK为系统的工作时钟频率,采用晶振提供频率11.05926MHz,将其四分频得到2.764815MHz即可作为系统时钟FCLK。     系统构成如下图所示:                  &nbsp

7、3.实现过程        &nbsp1) 液晶刷新时序产生        &nbsp此部分主要产生行同步和帧同步信号,完成行和帧同步。        &nbsp由于双屏结构液晶屏以4bit为单位上下同时显示,可以在CPLD内定义两个寄存器,行含4bit字符寄存器scp_reg,值为640/4=160, 帧含行寄存器lp_reg,值为480/2=240。字符时钟同

8、步计数器scp_count为4bit字符的计数器,在系统时钟scp_clk作用下计数加一,与行含字符寄存器内容比较,若等,表示一行结束,开始下一行,scp_count清零,行计数器lp_count加一,lp_flag置一,产生行同步信号LP。行计数器lp_count与帧含行寄存器内容比较,若等,表示一帧结束,开始下一帧,scp_count, lp_count 清零,fp_flag置一,产生帧同步信号FP。实现的程序如下:        &nbspalways(posedge scp_clk)  &

9、#160;       begin          scp_count=scp_count+1;        &nbspif(scp_count=scp_reg)        &nbspbegin          lp_cou

10、nt=lp_count+1;        &nbsplp_flag=1;        &nbspscp_count=0;        &nbspif(lp_count=lp_reg)          begin      

11、60;      fp_flag=1;        &nbsplp_count=0;          scp_count=0;          end        &nbspelse fp_flag=0; 

12、            end          else lp_flag=0;        &nbspend        &nbsp操作lcd时,scp_reg=160,lp_reg=240。仿真时取scp_reg=3,lp_reg=4,如下:&#

13、160;                     &nbsp2) 单片机写数据至RAM        &nbsp此部分为单片机通过CPLD更新RAM数据。        &nbsp单片机写信号WR有效,CPLD判断数据线上内容为指令还是数据,若为指令,则将

14、DB内容存入指令寄存器CMDREG,若为数据,判断指令寄存器CMDREG内容以指示状态。若CMDREG为8h00或8h02,表示DB为低或高八位地址,分别存入低高八位地址寄存器addl和addh,若为8h04,表示DB为要写入RAM的数据,存入数据寄存器ioreg。                                 

15、;&nbspCMDREG             &nbspDB内容                  &nbsp8h00             &nbsp低八位地址  

16、60;               &nbsp8h02             &nbsp高八位地址                  &nbsp8h04   

17、60;         &nbsp数据        &nbspif(a0=1) cmdreg=db;        &nbspelse begin             if(cmdreg=8'h00) addl=db; &

18、#160;           else if(cmdreg=8'h02)             begin             addh=db;         &

19、#160;   p=addh,addl;             end             else if(cmdreg=8'h04) ioreg=db;          end     

20、60;  &nbsp3) 显存的数据刷新到液晶屏        &nbsp此部分完成RAM数据到LCD的正确映射。        &nbspRAM存储和LCD对应关系如下图所示:                      &a

21、mp;nbsp正确的将RAM中的数据送入LCD,使液晶屏上下半屏随着时钟同时显示,必须理清RAM存储和LCD显示间的地址关系。LCD为640×480,所以下半屏起始地址对应的内容应为640×240/8=19200,即RAM0x4b00中的内容。        &nbsp由于4bit字符同步时钟scp_clk内含四个周期computerclk,可以在computerclk的二三周期,分别将RAM地址0x0000的内容AB和0x4b00的内容EF传至八位寄存器reg1和reg2,在余下的第四周期,将r

22、eg1和reg2的高四位即A和E传至上下半屏数据寄存器ud_reg和ld_reg,lcd将同时显示上半屏A下半屏E。下一个scp_clk时,只需将reg1和reg2的低四位即B和F传至ud_reg和ld_reg,则lcd将同时显示上半屏B下半屏F。以后每两个scp_clk,RAM地址加一,同样的方式取数据刷新lcd。        &nbsp仿真图中蓝线指示为RAM地址加一后上述一个循环的开始。           &

23、#160;          &nbsp4) 数据选择器        &nbsp单片机对RAM数据的更新,CPLD刷新LCD对RAM的读取,可以通过一个二选一数据选择器完成。                      &nbsp当单片机写时,置选择信号sel为1,存放MCU操作的地址寄存器addl、addh和数据寄存器ioreg与RAM地址数据总线连接,完成MCU对R

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论