CN102508807A - 一种基于sparc v8处理器的总线结构 - Google Patents
一种基于sparc v8处理器的总线结构 Download PDFInfo
- Publication number
- CN102508807A CN102508807A CN2011103500439A CN201110350043A CN102508807A CN 102508807 A CN102508807 A CN 102508807A CN 2011103500439 A CN2011103500439 A CN 2011103500439A CN 201110350043 A CN201110350043 A CN 201110350043A CN 102508807 A CN102508807 A CN 102508807A
- Authority
- CN
- China
- Prior art keywords
- data
- module
- processor
- slave unit
- bus
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Bus Control (AREA)
Abstract
一种基于SPARC V8处理器的总线结构,用于连接SPARC V8处理器和多个从设备;所述从设备是FPGA中的逻辑模块;所述总线结构包括一个用于连接SPARC V8处理器和多个从设备的总线桥;总线桥包括控制逻辑模块,地址译码模块,数据选择模块和数据通路。总线结构还包括多个接口模块,每个接口模块一端与总线桥相连,另一端与相应的从设备相连;每个接口模块的结构根据不同从设备的需要进行配置。本发明可以在很大程度上解决用户系统搭建上遇到的问题,提高开发速度,缩短系统的开发周期,可以满足不同用户在不同的方面的要求,极大的丰富系统的多样性。
Description
技术领域
本发明涉及一种总线结构。
背景技术
随着半导体技术的飞速发展,现场可编程器件FPGA由于极大的灵活性和很好的可重构能力,正在被应用到越来越多的领域。为了更好的发挥可编程器件的灵活性,处理器跟可编程器件的组合正被大家所广泛关注和接受,这就是可重构的SoC。可重构的SoC一般是由可编程逻辑和通用处理器核组成,这样的结构允许在不改变硬件结构的前提下进行一些参数、功能和指令的更新。大家所熟知的可编程片上系统(SoPC)就是可重构SoC的一种。国产的SoPC系统将处理器、存储器和FPGA等模块通过封装集成到一起,构建成一个片上系统。它是可编程系统,具有灵活的设计方式,可裁减、可扩充、可升级,并具备软硬件的系统可编程的功能。
由于国产SoPC硬件的特殊性,是将FPGA直接通过连接线连接在SPARC V8(Scalable Proces sor Architecture V8)处理器的I/O空间上,连接线是数量有限的地址数据信号和控制信号,这就决定了无法跟常规的使用FPGA一样,根据不同逻辑使用不同的接口信号与处理器之间进行通信。当我们需要在FPGA中实现多个功能的模块时,一条外部总线就显的很必要了。
已有的总线结构不适合SPARC v8处理器的要求,而且相对来说结构复杂,对硬件要求大,不适合我们的国产SoPC硬件的平台,我们要求总线是在FPGA中实现的,所以总线上的读写时序都必须满足SPARC V8处理器I/O空间的要求,产生的中断信号也不能通过总线直接传到处理器,种种因素决定了不能完全套用现成的片外总线来完成整个系统的构成。
发明内容
本发明的目的是提供一种结构简单、实现方便的基于SPARC V8处理器的总线结构。
本发明包括如下技术方案:
一种基于SPARC V8处理器的总线结构,用于连接SPARC V8处理器和多个从设备;所述从设备是FPGA中的逻辑模块;所述总线结构包括一个用于连接SPARC V8处理器和多个从设备的总线桥;总线桥包括控制逻辑模块,地址译码模块,数据选择模块和数据通路;
地址译码模块用来选择与所述处理器进行通信的从设备,控制逻辑模块将处理器输出的地址信号传给地址译码模块,地址译码模块对所述地址信号进行译码产生选择信号,并传递给控制逻辑模块;
控制逻辑模块根据地址译码模块产生的选择信号产生从设备选择信号和多路选择器控制信号;
数据通路包括读数据寄存器、写数据寄存器和多路选择器,读数据寄存器用于存储通过多路选择器选择的从设备的数据,写数据寄存器用于存储处理器写到从设备中的数据;多路选择器受到控制逻辑模块产生的多路选择器控制信号的控制,只有被选中的从设备输出的数据才会被多路选择器选中,传输到读数据寄存器中;
数据选择模块用于暂存所述处理器数据线上的数据,控制逻辑模块控制数据选择模块进行数据的传输;当进行读操作时,控制读数据寄存器将数据传输到数据选择模块中的寄存器,从而传输给处理器;当进行写操作时,控制数据选择模块将处理器数据传输到写数据寄存器中,从而传输到从设备中;当没有读写操作时,控制逻辑模块控制数据选择模块输出高阻状态。
总线结构还包括多个接口模块,每个接口模块一端与总线桥相连,另一端与相应的从设备相连;每个接口模块的结构根据不同从设备的需要进行配置。
本发明相对于现有技术所具有的优点是:
(1)本发明的总线结构具有结构简单,实现方便,硬件开销小等特点,总线规范简洁有效,可用于软核、固核和硬核,不需要使用特殊的开发工具和目标硬件,此外它几乎兼容已有的任何逻辑综合工具;可以使处理器在不增加与外部的FPGA的连接线的情况下,实现对多种外部设备的控制和管理。
(2)具有接口模块的总线结构能够将不同从设备输出的信号转换成统一的信号,接口模块的具体结构可以根据从设备的需要进行灵活地配置。减少了系统集成中的问题,提高了从设备的可重用性、可移植性和可靠性。
(3)本发明可以在很大程度上解决用户系统搭建上遇到的问题,提高开发速度,缩短系统的开发周期,可以满足不同用户在不同的方面的要求,极大的丰富系统的多样性。
附图说明
图1为SoPC系统结构图;
图2为本发明总线桥结构图;
图3为本发明接口模块结构图;
图4为本发明总线结构读周期时序图;
图5为本发明总线结构写周期时序图。
具体实施方式
本发明的总线结构负责连接SPARC V8处理器和FPGA中的逻辑模块。该总线挂接在SPARC V8处理器的I/O空间上,该发明的主要内容如下:
如图1所示,为SoPC系统结构图,包括SPARC V8处理器,FPGA,外部存储器和本发明的总线结构。本发明的总线结构用于连接SPARC V8处理器和FPGA内部的多个逻辑模块。总线结构最终在FPGA内部实现。
本发明的总线结构包括一个用于连接SPARC V8处理器和多个从设备的总线桥;从设备是FPGA中的逻辑模块。总线桥负责SPARC V8处理器与从设备之间进行数据和控制信号的转换,总线桥提供从设备读写的地址、数据和控制信号。总线桥作为总线的唯一主设备,整个总线上的传输都是由主设备发出的,由从设备负责响应。总线最多支持32个从设备。
优选地,本发明的总线结构还包括多个接口模块。接口模块用于连接总线桥和从设备。接口模块能够将不同的从设备信号转换成统一的总线桥信号,满足各种不同从设备信号的转换要求。
总线桥:总线桥作为总线上唯一的主设备,处理器通过总线桥来控制从设备。总线桥提供从设备读写的地址、数据和控制信号。如图2所示,总线桥主要由控制逻辑模块,地址译码模块,数据选择模块,数据通路几大部分组成。
1、地址译码模块:系统中有两个或以上的从设备时,就需要一个地址译码模块来选择所需要的从设备。控制逻辑模块将处理器输出的地址信号ADD[27:23]传给地址译码模块,地址译码模块对地址信号进行译码产生选择信号Slave_select[x],并传递给控制逻辑模块。
2、控制逻辑模块:控制逻辑模块是总线桥逻辑控制的主要部分。控制逻辑模块根据地址译码模块产生的Slave_select[x]信号产生从设备选择信号PSEL0-PSEL31和多路选择器控制信号。控制逻辑模块控制数据选择模块进行数据的传输,当没有读写操作时,控制逻辑模块控制数据选择模块输出高阻状态。当进行读操作时,控制读数据寄存器将数据传输到数据选择模块中的寄存器,从而传输给处理器;写操作时,控制数据选择模块将处理器数据传输到写数据寄存器中,从而传输到从设备中。
3、数据选择模块:数据选择模块的作用是暂存处理器数据线上的数据。当在进行读周期的时候,读数据寄存器将数据传到数据选择模块中,数据选择模块会在读信号OEN有效时将数据传到处理器的数据线上。在进行写周期的时候,处理器数据线DATA[15:0]上的数据首先会被传到数据选择模块中,在写信号WRITEN有效的情况下,数据选择模块将数据传到写数据寄存器中。
4、数据通路:数据通路包括读数据寄存器、写数据寄存器和多路选择器。读数据寄存器用于存储通过多路选择器选择的从设备的数据。写数据寄存器用于存储处理器写到从设备中的数据。多路选择器的作用是在主设备进行数据读取或从设备向主设备传输回应信号时将正确的信号传给主设备。多路选择器受到控制逻辑模块产生的控制信号的控制,只有被选中的从设备输出的数据才会被多路选择器选中,传输到读数据寄存器中。
图2的左侧是总线与处理器的信号,右侧是总线与从设备的接口信号,主要的信号包括:
CLK:系统时钟
RESETN:系统复位信号,低电平有效
IOSN:IO片选,低电平有效;
WRITEN:写使能,低电平有效
OEN:数据总线读使能,低电平有效
BRDYN:外部数据准备好信号,低电平有效
ADD:处理器地址总线
DATA:处理器数据总线
PSELx:从设备x的片选信号
PENABLE:高电平表示读或写过程的传输周期
PWRITE:读写控制信号,高电平表示写有效,低电平表示读有效
PADD:从设备地址线
PWDATA:从设备写数据线
PRDATA:从设备读数据线
接口模块:接口模块是负责链接总线桥和从设备之间的模块。接口模块的结构如图3所示,主要包括中断控制模块,字节调整模块,读/写FIFO和复位逻辑等,所有的结构可以根据不同从设备的需要进行裁剪,当需要哪一个部分的功能时可以选择。每个接口模块的具体结构可以进行配置。使用者只需要进行从设备的开发。中断控制模块能够对从设备产生的中断信号进行响应,从而将中断信号传到处理器中,产生中断信号。字节调整模块可以根据不同的情况进行配置。本发明的总线具有16位固定的数据总线,支持8、16位的数据传输。例如,如果从设备只支持8位数据读写,字节调整模块可以将总线传输的16位数据分成两个8位的数据对从设备进行输出,并将从设备输出的8位数据合成16位数据。复位逻辑模块用于将总线桥输出的复位信号转化为从设备的复位信号。例如,总线桥产生的复位信号是一个100ns的低电平信号,而从设备的复位信号要求是200ns的高电平信号,复位逻辑模块可以将100ns的低电平信号转化为200ns的高电平信号。读写FIFO用于缓存输入到从设备或从设备输出到总线桥的数据,以满足不同从设备传输数据的速率要求。
总线的接口模块设计能够满足各种不同逻辑模块的不同信号的要求,而且对于新的模块或者用户自定义的逻辑模块都能够很简洁的完成转换。
图4、图5分别给出了本发明总线结构对从设备的读写访问时序图。
图4中在第一个时钟周期中,地址总线ADD上产生正确的地址信号,IOSN和OEN信号被拉低,读周期开始。经过一个时钟周期,地址信号被传到了总线上,正确的从设备被选中,地址信息被驱动到总线的地址PADD上以读取逻辑模块中的数据。BRDYN为应答信号,BRDYN信号在第三个时钟周期中被拉低,表明PRDATA中的数据已经准备好,在第四个时钟周期内将数据PRDATA传到DATA数据总线上,数据传输完毕。
图5中,第一个时钟周期中,处理器在地址总线上产生正确的地址信号,同时IOSN,WRITEN被驱动为低电平,写传输开始。经过一个时钟周期后,处理器的地址信号ADD被传到从设备地址总线PADD上,相应的PSEL信号被选中,选择相应的从设备进行访问。接下来的一个时钟周期中,PENABLE信号被置高,处理器的DATA数据信号被传到总线中的PWDATA上,对逻辑模块进行写数据操作.若出现传输错误则逻辑模块根据传输的情况驱动中断模块,产生中断。
从设备通过PSEL信号被选中,来发生与总线的通信。只有在PSEL有效时,总线对从设备的操作或从设备对总线的操作才有效。从设备要求数据不能超过16位,地址最大支持23位,每个从设备有8M的寻址空间。
本发明的总线结构具有结构简单以及可以灵活地配置等特点,其运行时钟、总线位宽、各个接口位宽以及各个外设之间的互联特性等都可以灵活地配置。总线规范可用于软核、固核和硬核,不需要使用特殊的开发工具和目标硬件,此外它几乎兼容已有的任何逻辑综合工具。用户可以根据自己的需要进行代码的编写和删减,以达到简单高效的目的。
本发明定义了一种可配置的互联策略,允许设计者选择不同的数据传输模式和进行不同的模块加载,来形成完整的系统设计,可以使处理器在不增加与FPGA的连接线的情况下,实现对多种外部设备的控制和管理。
本发明的总线结构通过定义从设备之间公共的逻辑接口和数据交换标准,减少了系统集成中的问题,提高了从设备的可重用性、可移植性和可靠性,加快了产品市场化的速度。
本发明说明书中未作详细描述的内容属本领域专业技术人员的公知技术。虽然结合附图描述了本发明的实施方式,但是本领域普通技术人员可以在所附权利要求的范围内做出各种变形或修改。
Claims (2)
1.一种基于SPARC V8处理器的总线结构,用于连接SPARC V8处理器和多个从设备;所述从设备是FPGA中的逻辑模块;其特征在于:所述总线结构包括一个用于连接SPARC V8处理器和多个从设备的总线桥;总线桥包括控制逻辑模块,地址译码模块,数据选择模块和数据通路;
地址译码模块用来选择与所述处理器进行通信的从设备,控制逻辑模块将处理器输出的地址信号传给地址译码模块,地址译码模块对所述地址信号进行译码产生选择信号,并传递给控制逻辑模块;
控制逻辑模块根据地址译码模块产生的选择信号产生从设备选择信号和多路选择器控制信号;
数据通路包括读数据寄存器、写数据寄存器和多路选择器,读数据寄存器用于存储通过多路选择器选择的从设备的数据,写数据寄存器用于存储处理器写到从设备中的数据;多路选择器受到控制逻辑模块产生的多路选择器控制信号的控制,只有被选中的从设备输出的数据才会被多路选择器选中,传输到读数据寄存器中;
数据选择模块用于暂存所述处理器数据线上的数据,控制逻辑模块控制数据选择模块进行数据的传输;当进行读操作时,控制读数据寄存器将数据传输到数据选择模块中的寄存器,从而传输给处理器;当进行写操作时,控制数据选择模块将处理器数据传输到写数据寄存器中,从而传输到从设备中;当没有读写操作时,控制逻辑模块控制数据选择模块输出高阻状态。
2.如权利要求1所述的一种基于SPARC V8处理器的总线结构,其特征在于:还包括多个接口模块,每个接口模块一端与总线桥相连,另一端与相应的从设备相连;每个接口模块的结构根据不同从设备的需要进行配置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110350043.9A CN102508807B (zh) | 2011-11-08 | 2011-11-08 | 一种基于sparc v8处理器的总线结构 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110350043.9A CN102508807B (zh) | 2011-11-08 | 2011-11-08 | 一种基于sparc v8处理器的总线结构 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102508807A true CN102508807A (zh) | 2012-06-20 |
CN102508807B CN102508807B (zh) | 2014-11-05 |
Family
ID=46220898
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110350043.9A Expired - Fee Related CN102508807B (zh) | 2011-11-08 | 2011-11-08 | 一种基于sparc v8处理器的总线结构 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102508807B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104461620A (zh) * | 2014-11-27 | 2015-03-25 | 北京时代民芯科技有限公司 | 一种SoPC芯片自主重构软配置方法 |
CN104572326A (zh) * | 2014-12-18 | 2015-04-29 | 北京时代民芯科技有限公司 | 一种基于回读自重构的SoPC芯片容错方法 |
CN105429835A (zh) * | 2015-11-11 | 2016-03-23 | 南车株洲电力机车研究所有限公司 | 一种基于fpga的本地总线电路 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6754760B1 (en) * | 2000-08-21 | 2004-06-22 | Xilinx, Inc. | Programmable interface for a configurable system bus |
CN1760848A (zh) * | 2005-11-01 | 2006-04-19 | 苏州国芯科技有限公司 | 一种C*Core微处理器应用AMBA总线的设计方法 |
CN101876960A (zh) * | 2009-12-21 | 2010-11-03 | 北京中星微电子有限公司 | 一种apb总线系统及一种芯片 |
-
2011
- 2011-11-08 CN CN201110350043.9A patent/CN102508807B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6754760B1 (en) * | 2000-08-21 | 2004-06-22 | Xilinx, Inc. | Programmable interface for a configurable system bus |
CN1760848A (zh) * | 2005-11-01 | 2006-04-19 | 苏州国芯科技有限公司 | 一种C*Core微处理器应用AMBA总线的设计方法 |
CN101876960A (zh) * | 2009-12-21 | 2010-11-03 | 北京中星微电子有限公司 | 一种apb总线系统及一种芯片 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104461620A (zh) * | 2014-11-27 | 2015-03-25 | 北京时代民芯科技有限公司 | 一种SoPC芯片自主重构软配置方法 |
CN104572326A (zh) * | 2014-12-18 | 2015-04-29 | 北京时代民芯科技有限公司 | 一种基于回读自重构的SoPC芯片容错方法 |
CN104572326B (zh) * | 2014-12-18 | 2017-12-01 | 北京时代民芯科技有限公司 | 一种基于回读自重构的SoPC芯片容错方法 |
CN105429835A (zh) * | 2015-11-11 | 2016-03-23 | 南车株洲电力机车研究所有限公司 | 一种基于fpga的本地总线电路 |
Also Published As
Publication number | Publication date |
---|---|
CN102508807B (zh) | 2014-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN206557767U (zh) | 一种基于乒乓操作结构控制数据缓存的缓存系统 | |
CN101548329B (zh) | 具有串行和并行模式的存储器系统和方法 | |
CN101706552B (zh) | 支持芯片不同引脚封装的可配置式片上测试模块 | |
CN101833424B (zh) | 基于fpga的高速存储与传输装置 | |
CN101839974B (zh) | 一种双接口雷达数据记录仪 | |
CN105359120B (zh) | 使用双phy来支持多个pcie链路宽度的存储器和控制器 | |
CN103038758A (zh) | 改善集成非透明桥设备的操作的方法和系统 | |
CN1819197A (zh) | 使用最少引脚而被测试的半导体器件、以及测试其的方法 | |
CN101055767A (zh) | 多端口存储装置的测试操作 | |
CN203812236U (zh) | 一种基于处理器和现场可编程门阵列的数据交换系统 | |
CN104915303A (zh) | 基于PXIe总线的高速数字I/O系统 | |
CN1783330B (zh) | 存储元件 | |
CN101548328B (zh) | 用于捕获串行输入数据的设备和方法 | |
CN102214482A (zh) | 高速大容量固态电子记录器 | |
CN1819554B (zh) | 数据处理系统及其数据接口连接方法 | |
CN111736115A (zh) | 基于改进型sgdma+pcie的mimo毫米波雷达高速传输方法 | |
CN102622191B (zh) | 一种高速海量存储板 | |
CN102508807B (zh) | 一种基于sparc v8处理器的总线结构 | |
CN116841932A (zh) | 一种可灵活连接的便携式高速数据存取设备及其工作方法 | |
WO2017148221A1 (zh) | 串行外设接口的传输控制方法、装置及系统 | |
CN103019990A (zh) | 一种采集端启动pci-e总线dma上传数据的方法 | |
CN106776467B (zh) | 用于命令接收系统的spi flash控制芯片 | |
JP5643896B2 (ja) | デイジーチェーン接続されたデバイスのための高速インターフェイス | |
CN102096650B (zh) | 一种接口装置 | |
CN101655825A (zh) | 一种使用fpga实现lpc-usb双向通信的装置及lpc-usb和usb-lpc数据转换方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20141105 Termination date: 20211108 |