当前位置:首页 > 物联网 > 《物联网技术》杂志
[导读]摘要:给出了采用EDA软件Quartus II中的SOPC Builder来构建SOPC系统,再通过所构建的SOPC系统为平 台,在Altera公司的FPGA多媒体开发平台DE2上来设计物联网数字钟的具体方法。

引言

SOPC(System On Programmable Chip)是用可编程逻辑技术把整个系统放到一片硅片上的一种特殊嵌入式系统。一方面,它片上系统(SOC)完成整个系统的逻辑功能;另一方面,它是可编程系统,具有灵 活的设计方式,可裁剪、扩充、升级,并具备软硬件在 系统可编程功能。SOPC是PLD和ASIC技术融合的结果,可以认为SOPC代表了半导体产业未来的发展方向。本文采用EDA软件Quartus II中的SOPC Builder构建了一个SOPC系统。并以构建的系统为平台进行电子钟的软件设计。最后在Altera 公司FPGA多媒体开发平台DE2上进行实现。该方案不同于基于处理器或控制器及SOC的嵌入式系统,基于SOPC的嵌入式系统具有可配置的特点,不会包括任何专用外设,而是可根据需要灵活地在一片FPGA中构造外设接口。

ALTERA公司在其开发工具Quartus II中集成T SOPC Builder工具。在该工具的辅助下,设计者可以非常方便地完成系统集成,软硬件协同设计和验 证,以最大限度地提高电子系统的性能,加快设计速度和节约设计成本。

1  整体设计

数字电子钟是包括物联网在内的常用电子设备, 其主要功能是显示日期、时、分、秒等实时信息,并能 够方便地对这些实时信息进行设置。

本系统以NiosII软核处理器为处理器,同时添加了一些必要的外设,如并行输入输出口(PIO)、LCD1602模块、一定容量的片上RAM等,从而构成一个最小系统,以用于实现电子钟功能。其中定义的三位输入口(KEY1, KEY2, KEY3 )用作电子钟的控制键。KEY1用于工作模式的切换,在正常工作中可以对各位进行调整;KEY2用于调整的递减;KEY3用于调整的递加。两位的输出口用来连接蜂鸣器,做整点报时;LCD模块用作日期和时间的显示;片上RAM用作各种数据的存储。

2  硬件设计

2. 1  在SOPC Builder构建SOPC 系统

Quartus II软件中打开SOPC Builder,可以按要求依次添加NiosII处理器、30 MB的片上RAM,LCD模块、三位输入口和两位输出口,再给处理器分配复位向量地址和异常向量地址。然后给各外设分配一个基地址和中断优先级。所构成的系统窗口如图1所示。这时就可以点击生成按钮生成所构建的NiosII系统,如果构建成功,就会有System generation was successful的提示。

2. 2  在Quartus K中搭建硬件电路

设计时,可在Quartus H中建立一个原理图编辑文件,再将构建的NiosII系统添加进去,并为其添加管脚,同时进行管脚锁定,图2所示是其系统硬件电路。这样,就可以进行编译并生成用于配置的.sof文件和用于编程的.pof文件。然后再将所构建的系统下载到目标板上的FPGA中,并且连接好各外设。

基于SOPC和FPGA的LCD电子钟设计

3  软件设计

NiosII是一个用户可配置的通用RISC嵌入式处理器。Nios II集成开发环境(IDE)是NiosII系列嵌入式处理器的基本软件开发工具。所有软件开发任务都可以在NiosII IDE下完成,包括编辑,编译,调试程序。

电子钟的软件设计流程主要包括初始化,电子钟的运行和LCD的显示,其中后两个模块是系统的主要模块。电子钟运行模块主要用来实现电子钟的计时间和计日期功能,1秒的时间信号可通过软件延时来实现。LCD模块用来实现日期和时间的显示。下面分别介绍这两个模块。

3.1  电子钟模块设计

电子钟模块的软件流程如图3所示。初始化的目的是显示初始日期和时间并使其处于正常工作状态。通过KEY1键可以进行工作模式的切换,实现日期和时间的校正。最后对要显示的日期和时间数据进行格式转换,调整成适合LCD显示的数据,送给LCD进行实时的日期和时间显示。

基于SOPC和FPGA的LCD电子钟设计

3.2  LCD显示模块设计

LCD显示模块用来实现电子钟日期和时间的实时显示,其软件流程如图4所示。

基于SOPC和FPGA的LCD电子钟设计

4中的LCD初始化包括对LCD的功能设置、显示开关设置和模式设置。LCD定位到首行首列是通过对LCD写定位指令来完成的,可用于将显示位置确定到第一行第一列。写日期数据到第一行是通过写数据指令来将要显示的日期数据显示在液晶屏的第一行。LCD显示换行也是通过定位指令来实现的。

在对LCD模块进行显示控制时,用到了写控制命令和写数据命令。这些命令是针对具体配置的硬件电路而编写的.h头文件。LCD模块的头文件如下:

基于SOPC和FPGA的LCD电子钟设计

基于SOPC和FPGA的LCD电子钟设计

这样编写是为了和具体的硬件电路相对应,在LCD模块的硬件描述语言中,液晶模块RW和RS的地址分配模块如下:

基于SOPC和FPGA的LCD电子钟设计

其中RS信号是命令与数据线,高电平表示目前数据线上交换的是数据,低电平表示目前数据线上交 换的是命令。液晶模块可以根据这个信号作出正确的 响应。RW是电平信号,高电平表示对液晶模块执行 读取操作,低电平表示对液晶模块写入数据或命令。 这样便于确定各读写操作对应于基地址的偏移量。

最后,再将软硬件的配置文件下载到DE2开发板上进行电子钟的功能验证。其实验显示结果如图5所示。

基于SOPC和FPGA的LCD电子钟设计

4  结论

本文主要介绍了一种基于SOPC的电子钟的设计方法。并对SOPC硬件系统的设计过程以及基于此硬件系统的软件功能的设计进行了详细的介绍。由于在SOPC系统中,软硬件都可以编程,从而为硬件系统的灵活配置和软件系统的灵活设计提供了方便,也有利于系统的优化和升级。尤其这种量体裁衣的硬件配置方式,可以最大限度的提高系统的性价比。同时,也可以利用HardCopy技术,将成功实现于FPGA器件上的SOPC系统通过特定的技术直接向ASIC转化。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

此战略布局将Wi-Fi HaLow置于台湾无线网络产业中心

关键字: Wi-Fi 无线网络 物联网

芯科科技推出其迄今最高能量效率且支持能量采集功能的无线SoC

关键字: 物联网 能量采集 SoC

【2024年4月24日,德国慕尼黑讯】英飞凌科技股份公司(FSE代码:IFX / OTCQX代码:IFNNY)发布全新PSOC™ Edge微控制器(MCU)系列的详细信息,该系列产品的设计针对机器学习(ML)应用进行了优...

关键字: 物联网 机器学习 MCU

TDK株式会社(东京证券交易所代码:6762)新近推出InvenSense SmartEdgeMLTM解决方案,这是一种先进的边缘机器学习解决方案,为用户提供了在可穿戴设备、可听戴设备、增强现实眼镜、物联网 (IoT)...

关键字: 机器学习 物联网 传感器

TDK 株式会社(东京证券交易所代码:6762)隆重宣布其具有片上处理能力的 InvenSense SmartSonic™ICU-10201 超声波飞行时间 (ToF) 传感器全面上市。该传感器可助力实现高性能和低功耗的...

关键字: 飞行传感器 物联网 机器人

硕特Smart Connector应用在著名的瑞士最佳应用程序奖(Best of Swiss Apps Awards) 中荣获铜牌。 这些奖项是应用程序行业最受认可的竞赛之一,享有很高的国际认可度。

关键字: 连接器 物联网

Wxsmart是Weller的首款一体式手工焊接平台,提供全过程控制技术、最大的连接性和可追溯性,并支持物联网标准

关键字: 物联网 智能焊接

全球智能城市运动代表着城市环境设计、体验和导航方式的重大转变。这一重大变革部分是由数字化转型和物联网(IoT)技术推动的,这些技术正在将城市基础设施和城市景观重塑为智能连接中心。这一趋势的核心是符合智能城市独特需求的先进...

关键字: 数字化转型 物联网 Wi-Fi

Qorvo 畅谈 Wi-Fi 7、BMS 及 Sensor Fusion 的革新之力

关键字: Wi-Fi 7 BMS 物联网

物联网(Internet of Things, IoT)作为一种新兴的信息技术体系,正在以前所未有的速度渗透到各个行业和社会生活的方方面面。物联网概念的提出与发展,标志着人类步入了一个全新的数字化时代,它将实体世界与虚拟...

关键字: 物联网 IoT
关闭
关闭