2024年3月25日发(作者:殷善和)
维普资讯
.
开发研究与设计技术...... 本栏目责任编辑:谢媛媛
基于SOPC的嵌入式系统中FC总线I P核的设计
栗素娟.朱清智。阎保定
(河南科技大学电子信息工程学院。河南洛阳471003)
摘要:利用Altera的Quartos II软件开发平台在FPGA上实现了I。c总线IP核的设计。IP核满足I℃总线的功能要求.主设备通过该
Ip核可以向从设备中写入或者从中读取数据,解决了I℃总线在SOPC中的应用问题。为了满足复用,该IP核采用Avalon总线接口
,
同
时利用Modelsim进行了功能仿真。
关键词:SOPC;FPGA:I℃总线:IP核
中图分类号:TP302 文献标示码:A 文章编号:1009—3044(2007)01—1013o一01
The Design of I℃一bus IP Core Based OI1 SOPC
LI su-juan,ZHU Qing—zhi.YAN Bao—ding
(Electronic Informaiton Engineering College,Henan University of Science&Technology,Luoyang 471003,China)
Abstract:This paper is FC—bus IP core design which realizes in the Altera Quartus II software development platform.Already realized the
IP core of basic function,出e main device can read and write data from the slave device through this IP core
.
In order to reuse eashy.tihs IP core
uses the Avalon bus interface and completes the function simulation in Modelsim.
Key WOrds:SOPC;FPGA;IP Core;I C—bus
1引言
保持低电平迫使主机进入等待状态,当从机准备好接收下一个数
S0PC(System On Programmable Chip)设计技术是现代计算机
据字节并释放时钟线SCL后数据传输继续。因此字节命令控制器
辅助设计技术、EDA(Electronic Design Atomatie)技术和大规模集
从命令寄存器接收数据,并把要传输的字节从并行转换为串行的
成电路技术高度发展的产物。SOPC技术企图把尽可能大而完整
形式。因此需要通过设置控制寄存器来完成的数据传输的开始.
的电子系统,包括嵌入式处理器系统、接口系统、存储系统等在单
停止和读位。它是通过把字节操作分成位操作实现的,这些位操
一
FPCA中实现,从而实现规模、结构、可靠性、体积和成本等各
作随后送人位命令控制器。
项性能指标的最优化示【l】。I2c(Inter-Integrated Circuit)总线是一种
f2)位命令控制器
由PHILliPS公司开发的两线式串行总线。用于连接微控制器及其
位命令控制器处理真正的数据传输,由于连接到I2c总线的
外围设备,它是同步通信的一种特殊形式。具有接口线路少,控制
器件有不同种类的工艺。逻辑“O”(低)和“l”(高)的电平不是固定
方式简便,器件封装体积小,通信速率较高等优点。I℃总线接口
的。它由VDD的相关电平决定,每传输一个数据位就产生一个时
模块非常适用于以“MCU+FPGA”为模式的嵌入式系统中。当
钟脉冲。可以通过控制SCL和SDA线产生START和STOP信号
SOPC中的MCU不具有I℃总线接口功能,而使用I/O口模拟又
的指定电平。字节命令控制器告诉位命令处理器做什么操作,每
占用较多资源时.利用SOP(:中的硬件资源实现I2c总线接口成
一
个位操作被分成5部分(idle,A,B,C,D),只有STOP操作被分成
为最理想的选择f21。
四部分(idle…A B,C)。
2 I2C总线的概念
(3)寄存器组
I2c总线最初为音频和视频设备开发。如今主要在服务器管
I2c总线接121 IP核使用7个寄存器。即时钟预分频寄存器、控
理中使用,其中包括单个组件状态的通信。I2c软硬件协议十分巧
制寄存器、传输寄存器、接收寄存器、命令寄存器、移位寄存器和
妙。在单主方式的I2c总线系统中.总线上只有一个主机。其余是
一
个数据输入输出移位寄存器。数据输入输出移位寄存器的功能
I2c总线的外围器件。由于总线上只有一个主节点,它永远占据总
是存放和当前传输相关的数据。在读操作时,数据从SDA线移人
线,不会出现竞争.因此主节点不必有自己的节点地址。只要每个
到数据输入输出移位寄存器中.在移人一个字节之后.将内容复
外围器件有自己的器件地址,两根I/O口线SCL(时钟线)和SDA
制到接收寄存器中。在写操作时。传输寄存器的内容复制到数据
(数据线)就可以虚拟I2C总线接171示f31。
输入输出移位寄存器中,然后以串行方式传输到SDA线上f41。
在以“MCU+FPGA”为模式的嵌入式系统中。针对在I2c总线
4 C总线IP核的功能仿真
中的地位来说,MCU只需担当主件fMaster模式).I2c器件只充当
ModelSim是业界优秀的HDL语言仿真器。它的最大的特点
从件(Slaver模式1。而且一般的器件都只工作于标准速率。因此,若
是其强大的调试功能.例如:先进的数据流窗口.可以迅速追踪到
采用SOPC厂商提供的标准I2C总线接口,会造成资源浪费,这是
产生不定或者错误状态的原因:性能分析工具可以帮助分析性能
自行设计FC总线控制器的另一个重要原因。
瓶颈.加速仿真;代码覆盖率检查能确保测试的完备性;先进的
3 l2c总线lP核的设计
Signal Spy功能可以方便地访问VHDL或者VHDL和Verilog混
I2C总线IP核主要由三部分组成:第一部分是字节命令控制
合设计中的底层信号;此外,还具有多种模式的波形比较功能、支
器,第二部分是位命令控制器.第三部分是寄存器组。
持加密IP、可以实现与Matlab的Simulink的联合仿真等。为了使
fj1字节命令控制器
用ModelSim进行仿真.需要编写一个测试台程序,测试台程序的
字节命令控制器以字节的方式处理I2C的传输数据。因为发
结构如图l所示。
送到SDA线上的每个字节必须为8位,每次传输字节数量不受限
测试台程序的流程分为三部分.第一部分是将数据写入存储
制。但每个字节后必须跟一个响应位。首先传输的是数据的最高
器中。第二部分是读出数据并验证读出的数据和写入的是否一
位MSB,如果从机要完成一些其他功能后例如一个内部中断服务
致。写入读出数据的流程是:首先设置预分频寄存器的值,根据这
程序才能接收或发送下一个完整的数据字节,可以使时钟线SCL
个值产生内部操作需要的时钟。然后主设备通过I 总线接口IP
(下转第203页)
收稿日期:2006—11-24
作者简介:粟素娟(1979-)。士.河南科技大学助教,在读硕士。研究方向:嵌入式系统及机器人控制。
130 电奠知识与技术
维普资讯
本栏目责任编辑:李桂瑾 ....一人工智能及识别技术.
后.将这些数据合并到客户端的数据集中,同时,更新最后同步时
客户端customer数据添加到返回给客户端数据集的Conflict表
间。下图对客户端和服务器进行数据同步做了简单的示意。
中 然后,将e.¥tatus置为UpdateStatus.Continue,继续更新数据,直
2 m垃Web■鲁将cIenlctI●哪●∞砷l喇和
到所有数据更新完毕后,将数据集返回给客户端。
f21当客户端得到从服务器返回的数据集后,检查数据集中的
Conlfict表中有无冲突数据,如果有,表示有数据冲突发生,则从
Cust0mer表和Conflict表中分别取出发生冲突的服务器端的和客
户端的cu8tomer数据呈现给用户,让用户进行选择,是保留服务
器端的数据还是保留客户端的数据。之后根据用户的选择进行数
据处理。
f3)如果用户选择保留服务器端的数据,则清除客户端的冲突
数据.并将服务器端的数据合并到客户端数据集中。如果用户选
囤1数据同步示意
择保留客户端的数据,则清除服务器端的冲突数据,并将客户端
3.3.2数据的冲突处理策略
的冲突数据重新合并到客户端数据集中,等待下次的数据同步,
在将任何客户端数据更改与服务器进行同步时,由于服务器
再将客户端的数据重新同步到服务器上。
上保存的数据可能发生改变,而导致数据发生冲突。因此,需要采
用某种机制来确保数据冲突能够得到适当的处理,并且最后得到
4结束语
的数据是一致和正确的。在.NET框架中,可以使用数据集
本文论述了智能客户端实现偶尔连接的设计思想和所需要
(DataSet)和适配器(DataAdapter)来实现开放式并发处理。
使用的技术.这些思想和技术成功地应用于笔者所参与的多个项
当适配器调用Update方法更新数据时,会触发RowUpdated
目,在实践中得到了证明,可作为智能客户端设计的参考。
事件,通过对事件参数状态(e.Status)的检查,可以检测到当前是
参考文献:
fl】邹建峰,周山峰,项细威.C#企业开发案例精解【M】.北京:
否发生了数据冲突.并对冲突数据采取相应的处理。具体的数据
人民邮电出版社,2006.1.
冲突处理过程如下所述:
『2]David Hil1.Brenton Webster.Edward,等.智能客户端体系结
假设数据集中有一张Customer表和Conflict表。
构与设计指南[M/OL】.http://www.microsoft.com/ehina/msdn/library/
(11客户端与服务器进行数据同步,当服务器得到从客户端传
architecture/architecture/awhitecturetopic/SCArchDeGuide/caver.
来的数据后,调用Update方法进行数据更新,如果发生数据冲突,
mspx?mf ̄tme.2004-8—2O.
则在触发的RowUpdated事件中.可以检测到事件参数状态e.Sta.
[3]Microsoft公司.IssueVision智能客户端应用程序示例[CP/OL ̄
http://www.windowsforms.net/Applications/application.aspx?
tus为UpdateStatus.ErrorsOccurred 此时.在事件处理函数中对冲
PageID--40&tabindex=8,2004.
突数据进行处理:首先将发生冲突的服务器端的customer数据添
[4]Microsoft公司.MSDN技术资源库[Da/OL].http://msdn2.mi—
加到返回给客户端数据集的Customer表中.其次再将发生冲突的
crosoft.eom/zh-cn/library/default.aspx,2006
(上接第130页)
是从设备的串行时钟线、串行数据线、内部存储器地址信号、内部
核向从设备的存储器中写入数据。例如在本实验中,依次向从设 存储器的存储内容。
备中地址为Ol到o4的存储单元中写人11到44。写人数据完成
从图上的仿真结果可以看出程序的运行过程,mere _add 的值
后,主设备模块再通过I2c总线接口IP核从从设备存储器中读出
从O1变化到05。mem中存储的值从地址O1开始依次存人了11、
数据。为了验证存人数据的可靠性,不但要读出已存人数据的存
22、33、44。完全符合设计的要求。另外从上面的仿真结果也可以
储单元的内容,还要读出没有存人数据的单元的内容。从而来验 看出,sda的上跳边沿都发生在scl的低电平维持时间内.和I℃总
证该IP核功能的鲁棒性,看是否能按要求完成所设计的功能。最
线的协议要求一致,因此从功能的角度看设计达到了预期的目
后,将读出的数据和写人的数据进行比较,看是否一致。一致就输
标。其他信号的变化也在图上能清楚的看到。包括内部的计数器,
出数据,如果不一致就报错。这就是通过测试台程序进行功能测
移位寄存器等等。同时。从ModelSim功能仿真图上也可以看出读
试的过程。
出的数据和写入的数据是一致的,实现了设计的要求。
5结束语
按照I℃总线协议的功能要求对I2C总线接口模块进行了详
细设计,并利用ModelSim进行了仿真和功能测试,最后完成了逻
辑综合和布局布线,生成可以下载到FPGA中的编程文件。从而
解决了基于SOPC的嵌人式系统中I2c总线IP核的设计问题。此
外,为了测试I2c总线的功能.还用硬件描述语言VHDL设计了专
门用于测试的主设备模块和从设备模块.但是不将其综合成硬件
电路,节约了FPGA的硬件资源。
囤1 测试台程序结构
参考文献:
程序在ModelSim上进行功能仿真后的波形图如图2所示【5】。
【1】王诚,等.Ahera FPGA/CPLD设计(基础篇)【M】.北京:人民邮
电出版社.2o05.
【2】潘松,黄继业,曾锍.SOPC技术实用教程[M】.北京:清华大
学出版社.2005.
【3]Philips Semiconductors, e I:C-bus speciifcation.2001,(1):
21—23.
『4]zF前。吴淑泉,刘喜英.基于FPGA的I:C总线接口实现方法
图2功能仿真波形图
fJ1.微电子技术,2002,(3):41-43.
从图2可以看出程序的仿真结果。主要选取的是从设备的信
『51Mentor Graphics Inc.Modelsim 6.0 SE User Guide and Tu.
号,上面加亮的四个信号分别是scl、sda、mem_add、mem,它们分别
toria1.2OO4,(7):35—3 8.
2024年3月25日发(作者:殷善和)
维普资讯
.
开发研究与设计技术...... 本栏目责任编辑:谢媛媛
基于SOPC的嵌入式系统中FC总线I P核的设计
栗素娟.朱清智。阎保定
(河南科技大学电子信息工程学院。河南洛阳471003)
摘要:利用Altera的Quartos II软件开发平台在FPGA上实现了I。c总线IP核的设计。IP核满足I℃总线的功能要求.主设备通过该
Ip核可以向从设备中写入或者从中读取数据,解决了I℃总线在SOPC中的应用问题。为了满足复用,该IP核采用Avalon总线接口
,
同
时利用Modelsim进行了功能仿真。
关键词:SOPC;FPGA:I℃总线:IP核
中图分类号:TP302 文献标示码:A 文章编号:1009—3044(2007)01—1013o一01
The Design of I℃一bus IP Core Based OI1 SOPC
LI su-juan,ZHU Qing—zhi.YAN Bao—ding
(Electronic Informaiton Engineering College,Henan University of Science&Technology,Luoyang 471003,China)
Abstract:This paper is FC—bus IP core design which realizes in the Altera Quartus II software development platform.Already realized the
IP core of basic function,出e main device can read and write data from the slave device through this IP core
.
In order to reuse eashy.tihs IP core
uses the Avalon bus interface and completes the function simulation in Modelsim.
Key WOrds:SOPC;FPGA;IP Core;I C—bus
1引言
保持低电平迫使主机进入等待状态,当从机准备好接收下一个数
S0PC(System On Programmable Chip)设计技术是现代计算机
据字节并释放时钟线SCL后数据传输继续。因此字节命令控制器
辅助设计技术、EDA(Electronic Design Atomatie)技术和大规模集
从命令寄存器接收数据,并把要传输的字节从并行转换为串行的
成电路技术高度发展的产物。SOPC技术企图把尽可能大而完整
形式。因此需要通过设置控制寄存器来完成的数据传输的开始.
的电子系统,包括嵌入式处理器系统、接口系统、存储系统等在单
停止和读位。它是通过把字节操作分成位操作实现的,这些位操
一
FPCA中实现,从而实现规模、结构、可靠性、体积和成本等各
作随后送人位命令控制器。
项性能指标的最优化示【l】。I2c(Inter-Integrated Circuit)总线是一种
f2)位命令控制器
由PHILliPS公司开发的两线式串行总线。用于连接微控制器及其
位命令控制器处理真正的数据传输,由于连接到I2c总线的
外围设备,它是同步通信的一种特殊形式。具有接口线路少,控制
器件有不同种类的工艺。逻辑“O”(低)和“l”(高)的电平不是固定
方式简便,器件封装体积小,通信速率较高等优点。I℃总线接口
的。它由VDD的相关电平决定,每传输一个数据位就产生一个时
模块非常适用于以“MCU+FPGA”为模式的嵌入式系统中。当
钟脉冲。可以通过控制SCL和SDA线产生START和STOP信号
SOPC中的MCU不具有I℃总线接口功能,而使用I/O口模拟又
的指定电平。字节命令控制器告诉位命令处理器做什么操作,每
占用较多资源时.利用SOP(:中的硬件资源实现I2c总线接口成
一
个位操作被分成5部分(idle,A,B,C,D),只有STOP操作被分成
为最理想的选择f21。
四部分(idle…A B,C)。
2 I2C总线的概念
(3)寄存器组
I2c总线最初为音频和视频设备开发。如今主要在服务器管
I2c总线接121 IP核使用7个寄存器。即时钟预分频寄存器、控
理中使用,其中包括单个组件状态的通信。I2c软硬件协议十分巧
制寄存器、传输寄存器、接收寄存器、命令寄存器、移位寄存器和
妙。在单主方式的I2c总线系统中.总线上只有一个主机。其余是
一
个数据输入输出移位寄存器。数据输入输出移位寄存器的功能
I2c总线的外围器件。由于总线上只有一个主节点,它永远占据总
是存放和当前传输相关的数据。在读操作时,数据从SDA线移人
线,不会出现竞争.因此主节点不必有自己的节点地址。只要每个
到数据输入输出移位寄存器中.在移人一个字节之后.将内容复
外围器件有自己的器件地址,两根I/O口线SCL(时钟线)和SDA
制到接收寄存器中。在写操作时。传输寄存器的内容复制到数据
(数据线)就可以虚拟I2C总线接171示f31。
输入输出移位寄存器中,然后以串行方式传输到SDA线上f41。
在以“MCU+FPGA”为模式的嵌入式系统中。针对在I2c总线
4 C总线IP核的功能仿真
中的地位来说,MCU只需担当主件fMaster模式).I2c器件只充当
ModelSim是业界优秀的HDL语言仿真器。它的最大的特点
从件(Slaver模式1。而且一般的器件都只工作于标准速率。因此,若
是其强大的调试功能.例如:先进的数据流窗口.可以迅速追踪到
采用SOPC厂商提供的标准I2C总线接口,会造成资源浪费,这是
产生不定或者错误状态的原因:性能分析工具可以帮助分析性能
自行设计FC总线控制器的另一个重要原因。
瓶颈.加速仿真;代码覆盖率检查能确保测试的完备性;先进的
3 l2c总线lP核的设计
Signal Spy功能可以方便地访问VHDL或者VHDL和Verilog混
I2C总线IP核主要由三部分组成:第一部分是字节命令控制
合设计中的底层信号;此外,还具有多种模式的波形比较功能、支
器,第二部分是位命令控制器.第三部分是寄存器组。
持加密IP、可以实现与Matlab的Simulink的联合仿真等。为了使
fj1字节命令控制器
用ModelSim进行仿真.需要编写一个测试台程序,测试台程序的
字节命令控制器以字节的方式处理I2C的传输数据。因为发
结构如图l所示。
送到SDA线上的每个字节必须为8位,每次传输字节数量不受限
测试台程序的流程分为三部分.第一部分是将数据写入存储
制。但每个字节后必须跟一个响应位。首先传输的是数据的最高
器中。第二部分是读出数据并验证读出的数据和写入的是否一
位MSB,如果从机要完成一些其他功能后例如一个内部中断服务
致。写入读出数据的流程是:首先设置预分频寄存器的值,根据这
程序才能接收或发送下一个完整的数据字节,可以使时钟线SCL
个值产生内部操作需要的时钟。然后主设备通过I 总线接口IP
(下转第203页)
收稿日期:2006—11-24
作者简介:粟素娟(1979-)。士.河南科技大学助教,在读硕士。研究方向:嵌入式系统及机器人控制。
130 电奠知识与技术
维普资讯
本栏目责任编辑:李桂瑾 ....一人工智能及识别技术.
后.将这些数据合并到客户端的数据集中,同时,更新最后同步时
客户端customer数据添加到返回给客户端数据集的Conflict表
间。下图对客户端和服务器进行数据同步做了简单的示意。
中 然后,将e.¥tatus置为UpdateStatus.Continue,继续更新数据,直
2 m垃Web■鲁将cIenlctI●哪●∞砷l喇和
到所有数据更新完毕后,将数据集返回给客户端。
f21当客户端得到从服务器返回的数据集后,检查数据集中的
Conlfict表中有无冲突数据,如果有,表示有数据冲突发生,则从
Cust0mer表和Conflict表中分别取出发生冲突的服务器端的和客
户端的cu8tomer数据呈现给用户,让用户进行选择,是保留服务
器端的数据还是保留客户端的数据。之后根据用户的选择进行数
据处理。
f3)如果用户选择保留服务器端的数据,则清除客户端的冲突
数据.并将服务器端的数据合并到客户端数据集中。如果用户选
囤1数据同步示意
择保留客户端的数据,则清除服务器端的冲突数据,并将客户端
3.3.2数据的冲突处理策略
的冲突数据重新合并到客户端数据集中,等待下次的数据同步,
在将任何客户端数据更改与服务器进行同步时,由于服务器
再将客户端的数据重新同步到服务器上。
上保存的数据可能发生改变,而导致数据发生冲突。因此,需要采
用某种机制来确保数据冲突能够得到适当的处理,并且最后得到
4结束语
的数据是一致和正确的。在.NET框架中,可以使用数据集
本文论述了智能客户端实现偶尔连接的设计思想和所需要
(DataSet)和适配器(DataAdapter)来实现开放式并发处理。
使用的技术.这些思想和技术成功地应用于笔者所参与的多个项
当适配器调用Update方法更新数据时,会触发RowUpdated
目,在实践中得到了证明,可作为智能客户端设计的参考。
事件,通过对事件参数状态(e.Status)的检查,可以检测到当前是
参考文献:
fl】邹建峰,周山峰,项细威.C#企业开发案例精解【M】.北京:
否发生了数据冲突.并对冲突数据采取相应的处理。具体的数据
人民邮电出版社,2006.1.
冲突处理过程如下所述:
『2]David Hil1.Brenton Webster.Edward,等.智能客户端体系结
假设数据集中有一张Customer表和Conflict表。
构与设计指南[M/OL】.http://www.microsoft.com/ehina/msdn/library/
(11客户端与服务器进行数据同步,当服务器得到从客户端传
architecture/architecture/awhitecturetopic/SCArchDeGuide/caver.
来的数据后,调用Update方法进行数据更新,如果发生数据冲突,
mspx?mf ̄tme.2004-8—2O.
则在触发的RowUpdated事件中.可以检测到事件参数状态e.Sta.
[3]Microsoft公司.IssueVision智能客户端应用程序示例[CP/OL ̄
http://www.windowsforms.net/Applications/application.aspx?
tus为UpdateStatus.ErrorsOccurred 此时.在事件处理函数中对冲
PageID--40&tabindex=8,2004.
突数据进行处理:首先将发生冲突的服务器端的customer数据添
[4]Microsoft公司.MSDN技术资源库[Da/OL].http://msdn2.mi—
加到返回给客户端数据集的Customer表中.其次再将发生冲突的
crosoft.eom/zh-cn/library/default.aspx,2006
(上接第130页)
是从设备的串行时钟线、串行数据线、内部存储器地址信号、内部
核向从设备的存储器中写入数据。例如在本实验中,依次向从设 存储器的存储内容。
备中地址为Ol到o4的存储单元中写人11到44。写人数据完成
从图上的仿真结果可以看出程序的运行过程,mere _add 的值
后,主设备模块再通过I2c总线接口IP核从从设备存储器中读出
从O1变化到05。mem中存储的值从地址O1开始依次存人了11、
数据。为了验证存人数据的可靠性,不但要读出已存人数据的存
22、33、44。完全符合设计的要求。另外从上面的仿真结果也可以
储单元的内容,还要读出没有存人数据的单元的内容。从而来验 看出,sda的上跳边沿都发生在scl的低电平维持时间内.和I℃总
证该IP核功能的鲁棒性,看是否能按要求完成所设计的功能。最
线的协议要求一致,因此从功能的角度看设计达到了预期的目
后,将读出的数据和写人的数据进行比较,看是否一致。一致就输
标。其他信号的变化也在图上能清楚的看到。包括内部的计数器,
出数据,如果不一致就报错。这就是通过测试台程序进行功能测
移位寄存器等等。同时。从ModelSim功能仿真图上也可以看出读
试的过程。
出的数据和写入的数据是一致的,实现了设计的要求。
5结束语
按照I℃总线协议的功能要求对I2C总线接口模块进行了详
细设计,并利用ModelSim进行了仿真和功能测试,最后完成了逻
辑综合和布局布线,生成可以下载到FPGA中的编程文件。从而
解决了基于SOPC的嵌人式系统中I2c总线IP核的设计问题。此
外,为了测试I2c总线的功能.还用硬件描述语言VHDL设计了专
门用于测试的主设备模块和从设备模块.但是不将其综合成硬件
电路,节约了FPGA的硬件资源。
囤1 测试台程序结构
参考文献:
程序在ModelSim上进行功能仿真后的波形图如图2所示【5】。
【1】王诚,等.Ahera FPGA/CPLD设计(基础篇)【M】.北京:人民邮
电出版社.2o05.
【2】潘松,黄继业,曾锍.SOPC技术实用教程[M】.北京:清华大
学出版社.2005.
【3]Philips Semiconductors, e I:C-bus speciifcation.2001,(1):
21—23.
『4]zF前。吴淑泉,刘喜英.基于FPGA的I:C总线接口实现方法
图2功能仿真波形图
fJ1.微电子技术,2002,(3):41-43.
从图2可以看出程序的仿真结果。主要选取的是从设备的信
『51Mentor Graphics Inc.Modelsim 6.0 SE User Guide and Tu.
号,上面加亮的四个信号分别是scl、sda、mem_add、mem,它们分别
toria1.2OO4,(7):35—3 8.