当前位置:首页 > 电源 > 数字电源
[导读]本文讨论了基于Avalon 总线流传输的配置LCD 显示控制器IP 核的设计,根据自顶向下的设计思想,将IP 核进行层次功能划分设计,并对IP 核的仿真验证,最后加入到Nios II系统中。

    基于NiosII 软核的SOPC(System On Programmable Chip)是Altera 公司提出的片上可编程系统解决方案,它将CPU、存储器、I/O接口、DSP 模块以及锁相环(PLL)的系统设计所必须的模块集成到一片FPGA 上,构成一个可编程的片上系统,使所设计的电路在其规模、可靠性、体积、功耗、功能、上市周期、开发成本、产品维护以及硬件升级等多方面实现最优化。
  目前在Altera SOPC Builder 下集成了包括UART、SPI、Ethernet、SDRAM、Flash、DMA等控制器的IP 核。此外,用户也可以根据系统的需要自己设计或者购买第三方厂商的IP 核通过Avalon 总线像搭积木一样方便地将这些IP 捆绑的系统上。但是在显示接口上,Altera公司只提供了一个16*2 的字符型LCD 控制器的IP 核,只能用来显示数字和英文字母。如用户需要图形显示(如MP4 和PDA)则需要外接专用控制芯片或自己设计IP 核,使用起来很不方便。因此我们设计一个基于Nios II 系统的可配置LCD 控制器的IP 核,本IP 核可以方便的通过Avalon 挂接到Nios II 的系统上。考虑到目前LCD 显示屏的实际需要,我们设计的LCD 显示控制IP 核具有以下主要功能:

  以Avalon 总线流传输模式提供接口;
  为LCD 屏提供扫描时序信号和显示数据;
  提供可以选择的分辨率,最大可以支持1024*768;
  可以通过软件配置显存的基地址和大小;

1. Avalon 总线规范
1.1 总线概述
  Avalon 总线是Altera 公司为SOPC 系统开发的一种专用的内部连线技术,是一种理想的用于系统处理器和外设之间的内联总线。它是构建在Nios II 软核的基础上,由Altera 公司提供SOPC Builder 系统设计工具自动生成。
  Avalon 总线支持多个主外设,任何一个主外设都可以直接进行存储器访问(DMA),而无须Nios II 处理器的干预。一般的系统总线(如AMBA 总线)都是采用主端总裁机制,而Avalon 采用DMA 从端仲裁机制,能够实现真正意义上的多模块DMA 并行传输,而不相互影响。
  Avalon 总线允许多个主端口连接到总线模块,实现总线的的并发多主端口传输的功能,而总线模块不需要额外的特殊信号;当有多个主外设试图同时访问同一外设时,由 Avalon总线模块内部的从端口仲裁逻辑来处理冲突,对于主端口来说,它并不会感到有另一个主端口也在争用该外设,而是简单的发现它的等待请求信号一直有效,直到目标外设从端口准备好来处理自己的请求。因此,多个主外设只要不是同时访问同一个从外设,即可同时进行总线传输。仲裁的详细信息被封装在总线内部,主外设和从外设的接口是一致的,与外设的数量无关。

1.2 Avalon 总线流传输模式
  Avalon 规定了各种传输模式,这里只介绍本IP 核所使用的流传输模式。关于其他的总线模式读者可以Avalon 的总线规范。
  流传输模式是在流模式主外设和流模式从外设之间建立一个开放的信道以供连续的数据传输。该信道使得只要存在有效数据,数据便能在主从端口对之间流动,主外设不必为了确定从端口是否可用而不断地访问从外设的寄存器。流传输模式使得主从端口之间的数据吞吐量达到最大,同时避免了从外设数据溢出。流传输模式最适合DMA 传输。一个只包含简单的流控制信号和一个计数器的DMA 控制器就可以用来在一个从外设和一个存储器之间连续地传输数据。
  由于数据流是从Avalon 总线流向LCD 控制器,所以是流模式的从端口写传输。图1 显示了流模式从端口写传输的模型。
               
                             图1 流模式从端口写传输模型
  除了基本从端口传输中使用的信号外,流模式外设的接口中又引入了readyfordata、dataavailable 和 endofpacket 三个信号。流模式从端口就是指使用了一个或多个上述信号的从端口。readyfordata 有效表示外设准备好接受 Avalon 总线模块的写传输;dataavailable 有效表示能够为来自 Avalon 总线模块的读传输提供数据。Avalon 总线模块只在 readyfordata或 dataavailable 有效时才会发起传输行为。endofpacket 信号的含义取决于用户设计。
流模式从端口写传输模型的时序如图2 所示。

                               图2 流模式从端口写传输时序

2. Avalone 流模式LCD 控制器IP 核设计
  LCD 控制器按功能可划分为三个模块:接口模块,数据处理模块和时序产生模块。接口模块主要用来对系统进行配置,获取系统状态信息以及从内存读出将要显示的数据信息;数据处理模块根据系统的配置信息,对读入控制器的内存数据进行相应的处理,以符合用户设置的显示要求;时序产生模块产生显示时序信号,使得系统在不同的配置下都能产生与之相应的精确时序,以保证图象的正确显示。
  在具体实现时,这三个部分又可以划分为不同的功能模块来完成系统的总体功能。整个模块包括配置寄存器接口模块、DMA 接口模块组成和异步FIFO 模块,时序产生部分由时序产生模块构成。图3 为我们所设计的LCD 控制器IP 核的系统结构框图。
     
2.1 DMA 接口模块
  一般情况下,LCD 显示需要进行大批量的数据传送。在标准 VGA(640×480 60Hz)模式下,每个像素点的扫描周期只有40ns。如此高速的数据传输,如果直接通过CPU 来操作,将会消耗大量的CPU 时间。为了提高CPU 的工作效率,我们在Nios II 下利用DMA(Direct Memory Access,直接存储器访问)来完成。利用DMA 控制器在LCD 控制器和显示存储器SDRAM 之间建立一条专用的DMA 传输通道,通过DMA 控制器自动的读去图象数据,不需要CPU 干预。NiosII 中DMA 控制器如图4 所示:
     
  在DMA 传输时,首先需要由CPU 对DMA 进行初始化,设置显示存储器的基地址和长度以及LCD 控制器输入寄存器的地址,然后打开DMA 传输通道,使DMA 在没有CPU 干预的情况下直接从显示存储器读取显示数据传送到LCD控制的FIFO中。Nios II 可以在DMA暂停传输的期间操作SDRAM 中的显存,完成LCD 显示图像的更新。
  DMA 接口采用Avalon 主设备端口来实现。
2.2 配置积存器接口模块
  系统可以通过配置寄存器接口模块对LCD 显示控制器进行各种功能配置;LCD 控制器也可以通过接口模块向系统反馈所需的状态信息,从而实现对系统状态的检测和控制。通过针对不同种类的LCD 屏幕和不同的显示模式提供相应寄存器,可以保证对于各种LCD 显示屏的兼容。
  下图5 为配置积存器接口模块与Avalon 总线和LCD 时序发生器接口的示意图
                  
  配置寄存器接口所采用的是Avalon 的从设备端口来实现。
2.3 异步FIFO 模块
  由于总线接口模块和LCD 控制器工作在不同的时钟域,如果直接传送数据将会使电路进入亚稳态,无法正常工作。所以使用异步FIFO 做为接口在两个时钟之间传递数据。典型的异步FIFO 由异步双端口RAM 和控制逻辑构成。图6 为典型异步FIFO 的系统框图
 
                            图6 异步FIFO的系统框图
2.4 LCD 时序产生模块
  通过读取配置寄存器获得像素时钟,行周期,帧周期,同步头宽度以及时钟分频系数等信息后,LCD 时序产生模块产生LCD 显示需要的行同步信号、帧同步信号以及复合消隐信号。图7 描述了LCD 接口时序发生模块的接口信号
                   

3. LCD 控制器IP 核的仿真调试与安装
3.1 LCD 控制器IP 核的仿真调试
  本IP 核使用Verilog HDL 来编写,首先在Modelsim6.1 下先进行RTL 级的功能仿真,当所有功能都满足要求时,就可以使用综合工具综合后加入延时信息进行进行时序仿真。如果时序仿真也满足电路的设计要求,就可以当做一个 NiosII 系统自定义的组件加到Nios II 系统中去。
3.2 LCD 控制器IP 核的安装
  Avalon 流模式的 LCD 控制器需要安装到 SOPC Builder 中,以便将其加入到NiosII 系统中。
  这里的LCD 控制器是一个典型的流模式自定义外设。启动DMA 传输后,DMA 控制器将批量数据送往LCD 控制器,因此也可将LCD 控制器看成 FIFO 类型的存储器外设。选择Avalon Components->Legacy Components->Interface to User Logic,加入LCD 控制器的IP 核。
         
                           图8 DMA、LCD 控制器模块连接图
3.3 实际测试效果图
  实际测试是在Altera的DE2开发板上进行的。使用的LCD屏是夏普公司的800*600型号为LQ080V3DG01的TFT LCD屏,实际的显示效果图如图9所示
               

4. 总结
  本文讨论了基于Avalon 总线流传输的配置LCD 显示控制器IP 核的设计,根据自顶向下的设计思想,将IP 核进行层次功能划分设计,并对IP 核的仿真验证,最后加入到Nios II系统中。该IP 核经测试效果良好。由于本IP 核是可配置的,具有很好的移植性,可以方便的应用以Nios II 为核心的各种需要图形显示的嵌入式系统中。
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

IP核,也被称为知识产权核或知识产权模块,是经过反复验证的、可以重复使用的集成电路设计宏模块,主要应用于专用集成电路(ASIC)或者可编辑逻辑器件(FPGA)。IP核主要分为软IP核和硬IP核。

关键字: MCU器件 IP核

北京2023年8月31日 /美通社/ -- 8月30日,由中共河曲县委、河曲县人民政府主办,中共河曲县委宣传部、河曲县文化和旅游局、保利乐享文娱科技(北京)有限公司承办的"河清盛世,曲著华章"2023...

关键字: 3D建模 BSP DMA MAPPING

北京2023年8月9日 /美通社/ -- 浪潮云海经过13年的发展,到今天形成了以服务器虚拟化、超融合、InCloudOS 为代表的云海产品家族,凭借领先的产品技术能力和丰富的行业实践,满足不同行业、场景下客户的上云需求...

关键字: DMA 虚拟化 软硬件 CPU

北京2023年2月20日 /美通社/ -- 在经济领域有着重要影响力的CFS财经峰会2023第十二届活动定于今年7月举行,活动主题为"激活高质量发展澎湃活力"。 今年的财经峰会将以线下为主,线上结合...

关键字: 数字化 智能制造 数字经济 DMA

Mixpanel现已在GoogleCloudMarketplace上提供。Mixpanel功能强大、易于使用的产品分析解决方案可向产品团队展示对于其产品有效和无效的举措,让团队更便捷地访问数据,并帮助他们优先考虑其路线图...

关键字: PANEL MIX GOOGLE DMA

领先的半导体IP核提供商Arasan Chip Systems今天宣布,其MIPI DSI-2、CSI-2和C-PHY/D-PHY Combo IP已在Testmetrix...

关键字: STM TEST AN IP核

高盛集团(Goldman Sachs Group)周二证实了一项全面重组计划,这是该公司历史上最大的改革举措之一。高盛将把其交易和投行业务合并为一个部门,使该行从四个部门缩减至三个部门,缩减进军零售银行业务的努力,专注于...

关键字: DMA GROUP GO AN

SWM32S单片机有1个SDIO接口,支持多媒体卡(MMC)、SD 存储卡、SDIO 卡等设备,可以使用软件方法或者 DMA 方法(SDIO 模块内部 DMA,与芯片 DMA 模块无关)进行数据传输。

关键字: SWM32S单片机 SDIO DMA

标普500指数今年迄今为止下跌22.7%,但高盛(Goldman Sachs)策略师认为估值依然太高。摩根士丹利旗下的Morgan Stanley Wealth Management称,面对高通胀环境下的利率大幅上升,股...

关键字: DMA MANAGEMENT ST

高盛集团(Goldman Sachs Group)计划将其最大的业务合并为三个部门,进行该华尔街公司历史上最大的一次业务重组。高盛将把其旗舰投行业务和交易业务合并为一个部门,同时将资产管理和财富管理业务合并为另一个部门。...

关键字: APPLE DMA GENERAL GREEN
关闭
关闭