积分规则 网站地图 帮助中心    
嵌入式软件 单 片 机 DSP 存储器 传感控制 光电显示
嵌入式硬件 CPLD/FPGA SOPC AD/DA 接口电路 模拟设计
I C设计 通信产品 汽车电子 电源产品 消费电子 数控系统
工业控制 军工/航天 安防产品 医疗电子 计算机外设 测试测量
供应 I C
求购 公司库

  IC 求购 销售 公司 论文 DATASHEET 参考设计 论坛
当前位置: 电子技术 >> SOPC >> 应用论文
  相关分类: 相关文章 | 应用论文 | 新产品 | 下载 |
基于NiosII的SOPC中EEPROM Controller Core的设计
 
作者:未知   来源:杭州自由电子科技有限公司    点击数:315   更新时间:2008-6-11
您可以添加到网摘 让更多人关注此文章:

    

1  引言

由于FPGA的出现,使得我们不需要承担较大风险和较高的流片费用将小规模的或处于研发阶段的芯片制成ASIC芯片了。而基于FPGA的SOC——SOPC(可编程片上系统),由于其可编程性,按照用户特定需要构建的SOPC是一个在某种程度上替代SOC的较好方案。Altera公司为其FPGA开发了第二代软核嵌入式处理器NiosII,同时开发了用以构建基于NiosII处理器的SOPC Builder,使得用户可以通过自定义逻辑的方法方便地开发基于NiosII的SOPC系统。SOPC Builder集成在EDA工具QuartusII中,提供了NiosII处理器及一些常用外设接口,如DMA控制器, SDRAM控制器,SPI接口以及锁相环PLL等等,对于一些库中没有提供的模块用户可以自己定义添加。在实际应用中,具有I2C接口的EEPROM有着广泛的运用,本文就是在基于NiosII的SOPC中设计了一个EEPROM Controller Core,用Verilog HDL描述硬件逻辑部分,同时编写相关驱动,下载到Stratix系列的 FPGA中实现了对片外EEPROM AT24C02的读写。

2 基于NiosII的Controller Core

SOPC中的各模块通过Altera公司开发的Avalon总线互连。任何一个挂接在Avalon总线上的模块都必须符合Avalon总线规范,即包含特定的信号类型clk,reset,chipselect,write,writedata等,并满足一定建立保持时间和等待周期的读写模式。一个典型模块的Controller Core由硬件和驱动软件两部分构成。

2.1硬件构成

基于NiosII的Controller Core是用于构建SOPC的基本组件,它由HDL语言描述其硬件逻辑,一个典型的Controller Core由task logic(行为模块),register  file(寄存器),interface(总线接口)三部分组成,它们在逻辑上的关联关系如图1所示:



图1Controller Core在逻辑上的关联关系

interface是顶层模块,与Avalon总线的直接接口;register file:通信模块,对模块内部寄存器读写的通道;task logic:行为模块,实现模块逻辑功能的核心部分。Avalon总线通过顶层接口模块对寄存器进行操作,从而实现对行为模块的访问和控制。

2.2 驱动软件  

驱动软件是系统提供给上层应用程序访问底层硬件的通道,由一些特定名称的文件夹和C文件组成,其典型结构和功能如下:

(1)    inc/_regs.h头文件是最底层的也是唯一的硬件接口,定义了与Controller Core相关的数据结构、常量和函数原形等。

(2)    hal/inc/_routines.h头文件包含了实现驱动功能的函数声明等相关信息。

(3)    hal/src/_routines.c示例程序包含了具体实现驱动功能的子函数,用于指导软件开发人员使用该Controller Core。  

3  EEPROM工作原理

二线制EEPROM AT24C02是一种采用I2C接口的串行可电擦除可编程只读存储器。因其接线简单且对数据修改具有足够的灵活性,故得到了广泛的应用。

3.1 I2C总线规范

I2C总线是由数据线SDA和时钟线SCL构成,可发送和接收数据。I2C总线在传输数据的过程中共有三种基本类型信号,它们分别是开始信号:SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据。结束信号:SCL为高电平时,SDA由低电平向高电平跳变,结束传送数据。应答信号:接收端在接收到8位数据后,需向发送端发出特定的低电平脉冲,表示已收到数据。

3.2 二线制EEPROM工作原理

基于NiosII的SOPC通过EEPROM Controller Core可对其进行读写操作,读写规则要遵循EEPROM的时序要求。

(1)    EEPROM的写操作

如图2所示,EEPROM Controller发出“启动”信号后,紧接着发送4位I2C总线特征码1010,和3位芯片地址码xxx以及写状态位R/W=0。待接收到片外器件的应答信号ACK后,控制器将跟着发送EEPROM存储单元地址和要写入的数据。EEPROM每收到一个字节的数据,都要发送一个ACK应答信号返回给主机。随后主机发送停止信号,对EEPROM写一个字节的操作完成。



 
(2)    EEPROM的读操作

如图3所示,EEPROM的读操作包括写地址和读数据两步。控制器首先发送一个“启动”信号和控制字节(包括器件地址和读写状态位R/W=0)到EEPROM,通过写操作设置EEPROM存储单元地址。接着控制器再发送一个“启动”信号和控制字节(此时R/W=1),启动读操作,EEPROM收到信息后将指定单元的数据到发送到SDA线上,控制器收到数据后返回一个NACK信号给EEPROM,随后发送停止信号。


[1] [2]  下一页



相关文章
· 基于MSP430的烟雾报警器优化设计[278]
· 一种简单有效的面向过程软件设计思想[137]
· 嵌入式DDR息线的布线分析与设计[125]
· 为当今的电子设计选择合适的音频转换器[160]
· 基于MAX264的程控滤波器[110]
热门评论排行
·VHDL设计中电路简化问题的
·ARM嵌入式系统基础教程(N
·江苏嵌入式Linux教育培训
·ARM处理器应用开发4步骤
·锐极LINUX驱动培训班定于

文章评论
    没有任何评论
*只显示最新10条评论。评论内容只代表网友观点,与本站立场无关。更多评论
发表评论
  * 请先[登陆]再进行评论,谢谢。
评分: 1分 2分 3分 4分 5分
内容: *
发帖须知:
一.所发文章必须遵守《互联网电子公告服务管理规定》;
二.严禁发布供求代理信息,公司介绍,产品信息等广告宣传信息;
三.严禁恶意重复发帖;
四.严禁对个人,实体,民族,国家等进行漫骂,污蔑,诽谤。
 
热点新闻 [更多]
 
电子制造业如何化危为机
谁能成为“Wii”加速度传感器的新供
AMD抨击英特尔拖延反垄断指控案作法
台湾立院通过DRAM业整并提案&nb
Vishay 推出面向工业
中航芯控:医疗领域RFID应用势在必
安森美半导体为DDR3存储器模块应用
避免危及半导体业 德出手挽
HP实验室展示集CMOS电路与忆阻器
全球第二大代工巨头伟创力瘦身应对金融
 
热门下载 [更多]
 
[ PCB设计] Protel99教程下载
[ ] 手把手学单片机20个例
[ ] 单片机做的智能台灯
[ ] 单片机入门书
[ ] linux系统移植开发文档
[ ] IC卡的读写程序
[ ] 8051单片机C语言彻底应用
[ 常用软件] 555定时器电路设计软件V1.2
[ 常用软件] 51定时器计算软件
[ ] ARM处理器应用开发4步骤
 
论坛新帖 [更多]
 
[原创]工业平板电脑PVT-P...
Palm软件设计前的六问...
李嘉诚传中给年轻人提出了53条...
WindRiver产品介绍...
嵌入式Linux的GDB远程调...
ARM无痛苦起步...
最豪华适用的S3C2440开发...
[推荐]10MF020以太网数...
[推荐]10MF020以太网数...
[推荐]F020以太网核心模块...

 
赞助商 [更多]
 

ICP许可证号:[粤 05056597]
联系电话:010-82517432 82517615 传真: 010-82517615

版权所有 Copyright © 2006 嵌入式技术网