基于nios-ii的lcd-ip和核设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

基于NiosII的LCDIP核设计学生:涂冰冰,电子信息学院指导老师:郑恭明,电子信息学院【摘要】LCD液晶显示满足嵌入式系统日益提高的要求,特别在工业控制和消费电子领域,具有稳定可靠、成本低、功耗小、控制驱动方便、接口简单易用、模块化结构紧凑、体积小和重量轻等优点。NiosII软核嵌入式处理器是Altera公司提供的SOPC解决方案。NiosII是一种可配置的16/32位RISC处理器,它结合丰富的外设、专用指令和硬件加速单元可以低成本地提供极度灵活和功能强大的SOPC系统,开发者根据实际需要自行整合。Altera公司所有主流FPGA器件都支持NiosII,例如StratixII,Stratix,CycloneII,Cyclone,APEX,ACEX和HardCopy等系列器件。将LCD驱动与NiosII相结合,可以得到一个扩展性强、通用的IP核,从而解决不同型号液晶屏之间的驱动差异问题。本文在论述时,首先对以IP核为支撑的SOPC技术和LCD进行了简单介绍,然后概述了论文研究的开发环境和开发语言。接着讨论了LCD控制器IP软核的总体设计流程。然后在详细设计部分,对这些功能模块的设计与实现进行了讨论。在仿真部分,讨论了仿真测试程序的结构,并对各个模块的测试方法进行了描述,并给出了仿真波形图以供参考。最后给出测试结果,演示LCD的显示功能。【关键字】:NIOS2;FPGA;SOPC;LCD;IP核;Avalon总线IIILCDIPcoredesignbasedontheNiosII[Abstract]LCDdisplaytomeettheincreasingdemandsofembeddedsystems,especiallyintheindustrialcontrolandconsumerelectronicssegment,withastableandreliable,lowcost,lowpowerconsumption,andconvenientcontrol-driven,easy-to-useinterface,modularcompact,smallsizeandweightTheadvantagesoflight.TheNiosIIsoftcoreembeddedprocessorSOPCsolutionsforAlteraCorporation.NiosIIisaconfigurable16/32bitRISCprocessor,whichcombinesarichsetofperipherals,specialinstructionsandhardwareaccelerationunitscanbeextremelyflexibleandpowerfulSOPCsystem,low-costintegrationofdevelopmentaccordingtoactualneeds.AlteraCorporationmainstreamFPGAdevicessupporttheNiosIIfamilyofdevicessuchastheStratixII,Stratix,theCycloneII,Cyclone,APEX,ACEX,andHardCopyetc..LCDdriverwithNiosIIcombination,youcangetanextension,acommonIPcoretosolvethedifferencesbetweenLCDdriver.InhisdiscussionofthefirstIPcoresupportedbySOPCtechnology,andLCDgivesabriefintroductionandthenanoverviewofthedevelopmentenvironmentandlanguageofthethesis.WentontodiscusstheoveralldesignprocessoftheLCDcontrollerIPcore.Andthenthedetaileddesign,designandimplementationofthesefunctionalmodulesarediscussed.Inthesimulationpart,discussedthestructureofthesimulationtestproceduresandtestmethodsofeachmoduledescription,andgivesthesimulationwaveformsforreference.[KeyWords]:NIOS2;FPGA;SOPC;LCD;IPcore;Avalonbus前言第1页共71页基于NiosII的LCDIP核设计前言NiosII嵌入式处理器是Altera公司提出的SOPC解决方案,是一种用户可随意配置和构建的32位嵌入式处理器,结合丰富的外设可快速、灵活地构建功能强大的SOPC系统。Altera公司提供了一些通用的IP核,使得用户可轻松集成属于自己的专用功能;但对于一些特定的外设,没有现成可用的IP核,如液晶模块C240128Z等。用户可通过自定义逻辑的方法在SOPC设计中添加自定义IP核。在实际应用中,LCD液晶显示器凭借功耗低、体积小、轻薄及控制驱动简单等特点,在智能仪器、仪表和低功耗电子产品中得到了广泛应用。本文液晶显示模块C240128Z为例,在基于NiosII的SOPC系统中设计了LCD显示驱动IP核,并下载到Cyclone系列的FPGA中,实现了对LCD的显示驱动。基于NiosII的LCDIP核设计第2页共71页1、绪论1.1设计背景和意义液晶显示器,简称LCD(LiquidCrystalDisplay)。世界上第一台液晶显示设备出现在20世纪70年代初,被称之为TN-LCD(扭曲向列)液晶显示器。尽管是单色显示,它仍被推广到了电子表、计算器等领域。80年代,STN-LCD(超扭曲向列)液晶显示器出现,同时TFT-LCD(薄膜晶体管)液晶显示器技术被研发出来,但液晶技术仍未成熟,难以普及。80年代末90年代初,日本掌握了STN-LCD及TFT-LCD生产技术,LCD工业开始高速发展。LCD因具有工作电压低、功耗小、显示效果、方便携带和电磁辐射污染小优点,因而被广泛应用于手机、PDA产品、手持式仪器仪表等便携式电子产品与设备中。LCD驱动电路是液晶显示系统的重要组成部分,是一种计算机(或MCU)和液晶屏之间的接口电路。常规开发LCD驱动电路的方法是针对每一种LCD进行专门的硬件电路设计。由于LCD的规格相差较大,这样的设计既浪费时问,而且复用性也较差。随着SOPC(SystemOnaProgrammableChip,可编程单芯片系统)技术的不断成熟,基于SOPC技术的LCI)控制器的开发渐渐为人们所采用。这主要由于基于IP核的SOPC技术能够提高产品的设计效率,缩短上市时间,因而受到越来越多的开发人员的青睐。通常一个液晶显示系统由三部分组成:液晶显示屏、液晶显示驱动器和液晶显示控制器。其中,液晶显示屏和液晶显示驱动器通常由厂家集成在一个模块中,而液晶显示控制器通常是由专用集成电路组成,通常和CPU集成在一片芯片上,如当前流行的ARM系列芯片大多数都集成了液晶显示控制器。而对于基于SOPC开发的系统,液晶显示控制器则是一个可复用的IP核。因此,在SOPC系统中要构建一个显示系统,主要工作就是可复用的液晶显示控制器IP核的设计。目前,进行IP核和SOPC开发的比较成熟的开发环境是Altera公司QuartusII和SOPCBuilder。其中SOPCBuilder是QuartusII中进行SOPC开发的工具,在该集成开发工具中提供了丰富的IP核,用于构建SOPC系统,方便了开发者进行使用。其中的IP核大部分是基于Avalon总线的,使用非常方便。但是在构建SOPC系统时,这些IP核都是受知识产权保护1、绪论第3页共71页的,费用比较高。如果设计一个基于Avalon总线的LCD控制器IP核,这样对于构建一个具有显示系统的SOPC系统,就比较具有实际意义。1.2研究内容(1)研究Avalon片上总线的时序,以实现一个基于Avalon总线LCD控制器IP核,实现Avalon主端口和Avalon从端口,以便基于Avalon总线和NIOSIICPU构建SOPC系统。(2)对LCD控制器IP核的功能在总体上进行分析和设计。划分各功能模块,并对各功能模块的功能和接口进行分析和研究。在前人研究基础上,设计并实现LCD控制器的各个功能模块,其中Avalon从端口、Avalon主端口、FIFO模块的研究与设计。(3)对所实现的各个功能模块进行功能仿真和测试,并进行集成测试。(4)使用SOPCBuilder构建基于Avalon总线的SOPC系统,并搭建物理验证的试验平台。构建好SOPC系统和试验平台后,在NiosIIIDE集成环境下编写测软件,对所设计LCD控制器IP核进行物理验证。1.3方案选择通常有两种方式可以实现NiosII嵌入式处理器对LCD的显示驱动。一种是利用现成的并行输入/输出(PIO)内核。该内核提供了Avalon总线从控制器端口到通用I/O口间的存储器映射接口,将LCD模块的接口与NiosII嵌入式处理器的并行端口相连接,NiosII嵌入式处理器通过对其端口的操作来完成对LCD模块的控制。这种方式类似于单片机操作,时序简单,易于实现;但是在SOPC系统中硬件上需要设计与外设相连的I/O口,软件上需要编写接口程序进行读写控制,增加了处理器的时间开销,FPGA的并行处理能力没有得到发挥。另一种是采用自定义IP核方式。把LCD模块看成是外部存储器或I/O设备,作为从设备挂接到NiosII嵌入式处理器的Avalon总线上,处理器以访问I/O设备或读写存储器的方式对其进行控制。这种方法需要写HDL模块,自己定义控制、状态、数据寄存器和控制位,可较为灵活地实现复杂的时序控制。一旦完成了设计,即可封装为SOPCBuilder可用的独立元件,用户可以像使用Altera公司提供的其他外基于NiosII的LCDIP核设计第4页共71页设一样来使用,并且可以提供给其他设计者使用。本文选用该方式实现。本课题将使用VerilogHDL语言进行LCD控制器IP核的设计与实现,主要使用的开发工具为QuartusII集成开发环境,SOPCBuilder,NIOSIIIDE以及ModelSIMSE仿真软件。SOPC系统采用Avalon片上总线进行互联,CPU使用NIOSII。显存采用离片方式实现,以提高内存解决方案的灵活性。FPGA使用Altera公司的CycloneII系列,型号为EP2C8Q208C8N。LCD显示屏使用了240x128的液晶屏。1.4论文目标(1)完成一个基于Avalon总线的LCD控制器IP核的研究与设计,该IP核可应用于实际SOPC系统的构建。(2)该LCD控制器支持可支持LCD的图片、文字、滚动、闪烁、字体放大等功能。(3)完成LCD控制器IP核各个功能模块的功能仿真与测试。(4)构建基于NIOSIICPU和Avalon总线的显示系统,并在该系统上进行测试,完成LCD控制器在硬件平台上的验证。1.5论文结构本文设计了一种基于Avalon总线的LCD控制器IP核,并对该IP核的开发技术与环境、总体设计、实现细节、仿真测试和物理验证分别进行了研究与论述:第一章绪论部分分析了论文研究的背景和意义,并阐述了论文研究的内容,方案和目标。第二章首先对以IP核为支撑的SOPC技术进行了简单介绍,然后概述了设计中用到的开发技术和开发环境。第三章讨论了SOPC显示系统的构成,对LCD控制器IP核的各个功能模块进行了概要描述,并给出了寄存器定义和顶层模块的接口描述。第四章则编写驱动程序对LCD进行显示。第五章对各个模块的仿真和测试以及系统的集成测试进行了讨论,论述了测试程序的结构。第六章对全文进行了总结,并进行了研究展望。2、论文

1 / 75
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功