CN104598407B - 片上系统及控制方法 - Google Patents
片上系统及控制方法 Download PDFInfo
- Publication number
- CN104598407B CN104598407B CN201510056551.4A CN201510056551A CN104598407B CN 104598407 B CN104598407 B CN 104598407B CN 201510056551 A CN201510056551 A CN 201510056551A CN 104598407 B CN104598407 B CN 104598407B
- Authority
- CN
- China
- Prior art keywords
- circuit part
- address
- signal
- data
- interface controller
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/1642—Handling requests for interconnection or transfer for access to memory bus based on arbitration with request queuing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0038—System on Chip
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Multi Processors (AREA)
Abstract
公开了一种片上系统及控制方法,包括第一电路部分和第二电路部分,其中,第一电路部分包括第一主功能模块和第一互连接口控制器,第二电路部分包括第二主功能模块和第二互连接口控制器,第一互连接口控制器和第二互连接口控制器分别提供用于互连的内存接口,使得第一电路部分和第二部分经由第一内存总线连接在一起。本发明的片上系统采用内存接口实现不同电路部分之间的互连,从而可以降低开发成本和提供设计自由度。
Description
技术领域
本发明属于芯片设计技术,具体地,涉及片上系统及控制方法。
背景技术
在现有的片上系统(SOC,System on Chip)设计方法中,通常将各种数字逻辑设计资源(IP,Intellectual Property)以及各种模拟单元IP都集成在单一芯片上,以最大限度的提高集成度。
数字逻辑IP可以包括中央处理器(CPU)、数字信号处理器(DSP)、计数器(TIMER)、看门狗(WATCHDOG)等各种事物处理单元,图形、视频、音频、加解密等各种计算单元,SDMMC、通用异步收发传输器(UART)、串行外设接口(SPI)等各种数字接口,通用串行总线(USB)、PCIe、SATA、HDMI等各种高速串行接口的协议层以及连接各个设备的片上总线,但并不限于此。模拟单元IP可以包括模数转换器(ADC)、数模转换器(DAC),系统、音视频锁相环(PLL)以及各种高速串行接口的物理层(PHY),但并不限于此。
虽然将上述模块都集成在单一芯片上能提高集成度,但是问题随之而来。例如,在工艺节点升级过程中增加成本和潜在风险以及芯片升级再流片延误产品上市时间。为了降低设计成本、缩短产品上市时间、降低流片风险,已公开了一种改进的片上系统设计方法,其中将传统的大规模单芯片SOC划分为两部分。
图1示出根据现有技术的片上系统及其外部存储器的示意性框图。SOC的第一部分是不依赖于或少依赖于具体工艺节点的数字部分,即图1中所示SOC-A,第二部分强烈依赖于具体工艺节点的模拟部分,即图1所示SOC-B。SOC-A包括第一主功能模块110和第一互连接口控制器120,SOC-B包括第二主功能模块210、第二互连接口控制器220和存储器控制器280。
SOC-A和SOC-B之间使用SERDES技术连接。相应地,第一互连接口控制器120和第二互连接口控制器220分别提供SERDES接口。SOC-A可以通过申请、仲裁后获得内存总线控制权后经过SOC-B的转发继而访问存储器300。SOC-B可以通过申请、仲裁后获得内存总线控制权自主访问存储器300。
然而,SOC-A和SOC-B之间使用SERDES连接在技术难度和成本上都比较高。此外,将SOC划分成数字部分SOC-A和模拟部分SOC-B,不能满足面向用户的设计需求,因而存在着一定的局限性,不能更进一步降低开发和升级成本。
发明内容
本发明的目的在于提供一种可以采用内存接口实现不同部分之间的互连的片上系统及控制方法,以降低开发成本和提供设计自由度。
根据本发明的一方面,提供一种片上系统,包括第一电路部分和第二电路部分,其中,第一电路部分包括第一主功能模块和第一互连接口控制器,第二电路部分包括第二主功能模块和第二互连接口控制器,第一互连接口控制器和第二互连接口控制器分别提供用于互连的内存接口,使得第一电路部分和第二部分经由第一内存总线连接在一起。
优选地,第一电路部分是包括由数字电路和/或模拟电路组成的通用部分,以及第二电路部分是包括由数字电路和/或模拟电路组成的专用部分。
优选地,第一主功能模块包括处理器、用于支持处理器调试和工作的基本设备、以及用于提供时钟信号的锁相环。
优选地,第一主功能模块还包括核心设备,所述核心设备是相关的多个不同产品系列中的共性设备。
优选地,第二主功能模块包括用于提供主要功能的专用设备、用于提供控制逻辑的控制模块、以及用于提供时钟信号的锁相环。
优选地,第二主功能模块还包括用于为第二电路部分提供I/O支持的I/O模块。
优选地,第二互连接口控制器还提供用于连接外部存储器的内存接口,使得第一电路部分和第二电路部分经由第二内存总线访问外部存储器。
优选地,所述内存总线为SDRAM总线。
优选地,第一互连接口控制器为标准的存储器控制器,以及第二互连接口控制器为提供内存总线路由功能的设备扩展装置。
优选地,所述设备扩展装置包括第一内存接口、第二内存接口和内部扩展接口,第一内存接口用于与第一互连接口控制器相连接,第二内存接口用于与外部存储器相连接,内部扩展接口用于与第二主功能模块相连接。
优选地,所述设备扩展装置根据内存总线信号产生选择信号,使得第一内存接口、第二内存接口和内部扩展接口中的任意两个相连,从而提供内存总线的路由功能,所述内存总线信号包括数据信号以及地址和控制信号。
优选地,所述第一互连接口控制器在标准的存储器控制器的基础上包括附加的级联仲裁模块,以及第二互连接口控制器在标准的存储器控制器的基础上包括附加的总线申请与命令监测模块和旁路通道。
优选地,所述第一互连接口控制器的级联仲裁模块和第二互连接口控制器的总线申请与命令监测模块之间经由仲裁控制线相连接,使得第二电路部分经由仲裁控制线向第一电路部分提出内存使用请求,并且经由仲裁控制线从第一电路部分获得内存使用授权。
优选地,当第一电路部分获得内存总线使用权时,第二互连接口控制器的旁路通道将内存总线时序旁路至第二互连接口控制器的时序发生器。
优选地,第一电路部分和第二电路部分位于相同半导体管芯的不同区域和/或层,或者封装成一个半导体芯片的不同半导体管芯,或者是不同的半导体芯片。
根据本发明的另一方面,提供一种片上系统控制方法,所述片上系统包括第一电路部分和第二电路部分,第一电路部分包括第一主功能模块和第一互连接口控制器,第二电路部分包括第二主功能模块和第二互连接口控制器,所述方法包括:第一电路部分经由内存总线向第二电路部分传输内存总线信号;第二电路部分的第二互连接口控制器接收所述内存总线信号,并根据所述内存总线信号产生选择信号;所述第二电路部分的第二互连接口控制器根据所述选择信号提供第一电路部分、第二电路部分的主功能模块和外部存储器之间的访问路径,所述内存总线信号包括数据信号以及地址和控制信号。
优选地,第一互连接口控制器为标准的存储器控制器,以及第二互连接口控制器为提供内存总线路由功能的设备扩展装置。
优选地,所述第二互连接口控制器根据所述内存总线信号产生选择信号包括:译码器根据地址和控制信号中的片选信号和/或地址信号产生选择信号。
优选地,所述片上系统控制方法提供以下访问路径中的至少之一:第一电路部分直接访问第二电路部分的第二互连接口控制器,第二电路部分的第二主功能模块直接访问第二电路部分的第二互连接口控制器,第一电路部分经由第二电路部分的第二互连接口控制器访问外部存储器,第二电路部分的第二主功能模块经由第二电路部分的第二互连接口控制器访问外部存储器,以及第一电路部分经由第二电路部分的第二互连接口控制器访问第二电路部分的第二主功能模块。
优选地,所述第二电路部分的第二互连接口控制器包括:第一端口,用于经由内存总线与外部的第一电路部分相连;第二端口,用于经由内存总线与外部的外部存储器相连;第三端口,用于经由用户自定义总线与第二电路部分的第二主功能模块相连;第一数据缓冲器,用于缓存经由第一端口传送的数据信号;第二数据缓冲器,用于缓存经由第二端口传送的数据信号;第三数据缓冲器,用于缓存经由第三端口传送的数据信号;译码器,用于根据经由第一端口传送的地址和控制信号,产生所述选择信号;数据复用模块,用于根据选择信号,将第一至第三数据缓冲器中的至少两个数据缓冲器相连;以及旁路开关阵列,所述旁路开关阵列根据选择信号,选择性地将地址和控制信号从第一端口传送至第二端口。
优选地,所述第一电路部分经由第二电路部分的第二互连接口控制器访问外部存储器包括:在读操作中,第一电路部分发出地址和控制信号给译码器和旁路开关阵列,译码器对地址和控制信号进行译码,解析出第一电路部分发出的指令为第一电路部分对外部存储器的读操作,旁路开关阵列打开,地址和控制信号经旁路开关阵列传递到外部存储器;外部存储器根据接收到的地址和控制信号后,外部存储器的相应数据信号依次提供给第二数据缓冲器、数据复用模块选择、第一数据缓冲器,第一电路部分读取第一数据缓冲器缓存的数据;在写操作中,第一电路部分发出地址和控制信号给译码器和旁路开关阵列,译码器对地址和控制信号进行译码,解析出第一电路部分发出的指令为第一电路部分对外部存储器的写操作,旁路开关阵列打开,地址和控制信号经旁路开关阵列传递到外部存储器;第一电路部分发出数据信号,数据信号依次经过第一数据缓冲器、数据复用模块、第二数据缓冲器,外部存储器根据接收到的地址和控制信号将第二数据缓冲器的数据写入到外部存储器相应地址。
优选地,所述第一电路部分经由第二电路部分的第二互连接口控制器访问第二电路部分的第二主功能模块包括:在读操作中,第一电路部分发出地址和控制信号给译码器和旁路开关阵列,译码器对地址和控制信号进行译码,解析出第一电路部分发出的指令为第一电路部分对第二电路部分的第二主功能模块的读操作,旁路开关阵列关闭,地址和控制信号经译码器译码后由用户总线控制器发出地址和控制信号给第二电路部分的第二主功能模块;第二电路部分的第二主功能模块根据接用户总线控制器发出的地址和控制信号,第二电路部分的第二主功能模块的相应数据信号依次提供给第三数据缓冲器、数据复用模块选择、第一数据缓冲器,第一电路部分读取第一数据缓冲器缓存的数据;在写操作中,第一电路部分发出地址和控制信号给译码器和旁路开关阵列,译码器对地址和控制信号进行译码,解析出第一电路部分发出的指令为第一电路部分对第二电路部分的第二主功能模块的写操作,旁路开关阵列关闭,地址和控制信号经译码器译码后由用户总线控制器发出地址和控制信号给第二电路部分的第二主功能模块;第一电路部分发出数据信号,数据信号依次经过第一数据缓冲器、数据复用模块、第三数据缓冲器,第二电路部分的第二主功能模块根据用户总线控制器发出的地址和控制信号将第三数据缓冲器的数据写入到第二电路部分的第二主功能模块相应地址。
优选地,所述第二电路部分的第二主功能模块经由第二电路部分的第二互连接口控制器访问外部存储器包括:在读操作中,第一电路部分发出地址和控制信号给译码器和旁路开关阵列,译码器对地址和控制信号进行译码,解析出第一电路部分发出的指令为第二电路部分的第二主功能模块对外部存储器的读操作,旁路开关阵列打开,同时地址和控制信号经译码器译码后由用户总线控制器发出地址和控制信号给第二电路部分的第二主功能模块;外部存储器根据接收到的地址和控制信号后,外部存储器的相应数据信号依次提供给第二数据缓冲器、数据复用模块选择、第三数据缓冲器,第二电路部分的第二主功能模块读取第三数据缓冲器缓存的数据;在写操作中,第一电路部分发出地址和控制信号给译码器和旁路开关阵列,译码器对地址和控制信号进行译码,解析出第一电路部分发出的指令为第二电路部分的第二主功能模块对外部存储器的写操作,旁路开关阵列打开,同时地址和控制信号经译码器译码后由用户总线控制器发出地址和控制信号给第二电路部分的第二主功能模块;第二电路部分的第二主功能模块根据用户总线发出的地址和控制信号将数据依次提供给第三数据缓冲器、数据复用模块、第二数据缓冲器,从而将第二电路部分的第二主功能模块的数据写入外部存储器相应地址。
根据本发明的片上系统,其划分准则不再局限于设计过程中数字和模拟的划分,转而综合考虑产品级的需求,将系统分为基础部分和专用部分,具有明显的去相关性特性,即基础部分和专用部分可以独立工作;同时基础部分可以通用在多个产品系列,专用部分可以拥有独立工作的能力,也可以作为基础部分的补充应用于某些专用场合,摆脱了传统SOC系统的庞大、累赘、系统成本高、工艺升级昂贵,不具备经济适用的通用特性。另外,本发明还能使系统拥有SOC部分和ASIC/ASSP部分丰富的不同组合,让系统产品更加丰富。
附图说明
通过以下参照附图对本发明实施例的描述,本发明的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1示出根据现有技术的片上系统及其外部存储器的示意性框图;
图2示出根据本发明的片上系统及其外部存储器的示意性框图;
图3a和3b分别示出根据本发明的片上系统两个部分的示意性框图;
图4a和4b分别示出根据本发明的片上系统两个部分的互连接口控制器的第一实施例的示意性框图;
图5a和5b分别示出根据本发明的片上系统两个部分的互连接口控制器的第二实施例的示意性框图;以及
图6a和6b分别示出根据本发明的片上系统两个部分的互连接口控制器的第三实施例的示意性框图;以及
图7示出根据本发明的实施例的片上系统的控制方法的流程图。
具体实施方式
以下将参照附图更详细地描述本发明的各种实施例。在各个附图中,相同的元件采用相同或类似的附图标记来表示。为了清楚起见,附图中的各个部分没有按比例绘制。
本发明可以各种形式呈现,以下将描述其中一些示例。
图2示出根据本发明的片上系统及其外部存储器的示意性框图。如图所示,将SOC划分为SOC-A和SOC-B两个电路部分。SOC-A包括第一主功能模块110和第一互连接口控制器150,SOC-B包括第二主功能模块210和第二互连接口控制器230。
然而,与现有技术不同,SOC-A和SOC-B之间使用内存总线连接。相应地,第一互连接口控制器150和第二互连接口控制器230分别提供内存接口。第二互连接口控制器230还提供用于连接外部存储器300的内存接口,从而不需要使用附加的存储器控制器280。
作为一个优选地实施例,SOC的两个电路部分SOC-A和SOC-B共享同一外部存储器300。外部存储器300可以是同步动态随机存储器(SDRAM)。在进一步优选的实施例中,外部存储器300包括主存储器和辅存储器。辅存储器是为了扩展系统带宽而附加的存储器。
在上述优选的实施例中,第一互连接口控制器150和第二互连接口控制器230分别提供SDRAM接口。由于片上系统的数据交互量较大,需要的传输带宽较高,SDRAM接口可以满足数据传输带宽的需求。
在根据本发明的SOC中,由于SOC的两部分SOC-A和SOC-B之间的互连兼容现有的内存总线,因此两部分的划分不限于数字部分和逻辑部分,而是可以根据不同工艺/设计和市场定位的需求,任意地将SOC划分为基础部分SOC-A和专用部分SOC-B。
进一步而言,SOC划分成不同部分的基本准则是依赖产品级的需求。SOC-A主要满足产品级的基础需求,例如可以包括各种通用处理器以及处理器系统所必须的一些功能模块。另外,SOC-A还可以包括产品实现一些功能所依赖的部分部件,例如以支持处理器调试和工作的功能模块如调试接口、中断控制器、看门狗、定时器、串口、GPIO等。SOC-B电路主要满足产品级的专用需求,例如可以包括产品领域的专用电路部件ASIC或ASSP,比如CVBS视频解码器、ISP(影像信号处理器)、TOE(TCP卸载引擎)、USB接口芯片。
该SOC的两部分SOC-A和SOC-B的物理实现可以是相同半导体管芯的不同区域和/或层,或者是封装成一个半导体芯片的不同半导体管芯,或者是不同的半导体芯片。在相同半导体管芯中,位于不同区域和/或层的两部分SOC-A和SOC-B的物理连接可以经由互连金属实现。在一个半导体芯片内,位于不同半导体管芯中的两部分SOC-A和SOC-B的物理连接可以经由键合线或引线框实现。位于不同半导体芯片中的SOC-A和SOC-B的物理连接可以经由芯片引脚和外部的印刷电路板(PCB)实现。例如,第一部分SOC-A和第二部分SOC-B其中之一位于芯片上,而另一个位于可编程器件(例如FPGA,但不限于此)上,后续可以采用印刷板(PCB)等方式将二者连接起来。
图3a和3b分别示出根据本发明的片上系统两个部分的示意性框图。SOC的第一部分SOC-A包括处理器111、核心设备112、基本设备113、锁相环(PLL)114和第一互连接口控制器150,SOC的第二部分SOC-B包括控制模块211、专用设备212、输入/输出接口(I/O)213、锁相环(PLL)214和第二互连接口控制器230。
正如上文所述,第一互连接口控制器150和第二互连接口控制器230分别提供内存接口,使得SOC的第一部分SOC-A和第二部分SOC-B经由内存总线互连。
在第一部分SOC-A中,处理器111可以是各种具备某种指令集的计算或控制单元,例如单个或多个CPU、MPU、MCU或者DSP等通用处理器。基本设备113是支持处理器调试和工作的基本设备,例如调试接口、中断控制器、看门狗、定时器、串口、GPIO等一些产品的基本功能。PLL 114向其他单元或模块提供所需工作频率的时钟信号。
在第一部分SOC-A中,核心设备112是不同产品系列中的共性设备。以“监控产品系列”和“机顶盒产品系列”为例,两者之间具有很大的不同。例如,监控产品需要支持多种大容量存储接口(SATA、USB2.0/3.0、PCIe等)、影像信号处理器等,机顶盒产品需要支持多种视频接口(HDMI、AV、S Video、VGA、DisplayPort、DVI)、音频处理及编解码等。虽然“监控产品系列”和“机顶盒产品系列”之间的区别是很大的,但二者之间的共性也非常明显,因此,在SOC通用部分SOC-A中,核心设备112可以包括但不限于二者的共性设备,例如支持视频编解码器以支持视频的压缩和播放(回放)、以太网网接口、eMMC/Flash接口、安全模块、2D图形加速等。
不同产品系列之间存在共性是普遍存在的现象,因此,本申请中所述的核心设备112仅仅指关注的不同产品系列中所具有的共性设备。在不同的产品系列中,不同产品系列之间的共性可能不同,也就是不同产品系列之间的共性并不局限于上述的关于“监控产品系列”和“机顶盒产品系列”的例子。
应当注意,核心设备112是可选的。从设计者角度或产品规划来讲,可以认为第一部分SOC-A具有基本设备113就够了,不需要核心设备112。
在第二部分SOC-B中,控制模块211可以作为SOC-B内简单的事务处理或计算单元,用于向其他单元或模块提所需的控制逻辑,进行初始化和运行控制。I/O模块213是可选的,比如某些专用部件需要I/O支持,或者某些ADC/DAC单元也需要I/O支持。I/O模块213包括可能需要的I/O资源的支持。PLL 214向其他单元或模块提供所需工作频率的时钟信号。
在第二部分SOC-B中,专用设备212是主要的功能模块,可以包含设计者或市场人员认为的专用模块。以“监控产品系列”和“机顶盒产品系列”为例,专用设备212例如包括多种大容量存储接口(SATA、USB2.0/3.0、PCIe等)、各种视频接口(HDMI、AV、S Video、VGA、DisplayPort、DVI)、CVBS视频解码器、ISP(影像信号处理器)、TOE(TCP卸载引擎),但不限于此。
图4a和4b分别示出根据本发明的片上系统两个部分的互连接口控制器的第一实施例的示意性框图。如图所示,第一互连接口控制器150包括事件调度模块151、DMA与配置接口152和时序发生器153,第二互连接口控制器230包括多个译码器2302、开关阵列2303、用户总线控制器2306、数据利用模块2304和多个数据缓冲器2301、2305和2307。
在第一部分SOC-A中,第一互连接口控制器150可以采用标准的SDRAM控制器。事件调度模块151针对SOC-A中的第一主功能模块110的内存操作请求形成调度队列,进行最优排序、缓冲等调度。内存操作请求包括对外部存储器的读、写、刷新、充放电等操作请求。DMA与配置接口152提供与SOC-A中的第一主功能模块110之间的数据通道,用于接收自身的配置数据,以及为内存操作请求提供DMA数据通道。时序发生器153根据事件调度模块151的结果,产生第一互连接口控制器150具体操作的接口时序。
在第二部分SOC-B中,第二互连接口控制器230例如是包括第一内存接口、第二内存接口和内部扩展接口的设备扩展装置。第一内存接口提供第二互连接口控制器230与SOC-A中的第一互连接口控制器150之间的连接。第二内存接口提供第二互连接口控制器230与外部存储器300之间的连接。内部扩展接口提供第二互连接口控制器230与SOC-B中的主功能模块之间的连接。
第二互连接口控制器230包括与第一内存接口、第二内存接口和内部扩展接口分别对应的数据缓冲器2031、2035和2037。数据缓冲器2031经由内存总线,从SOC-A中的第一互连接口控制器150获取数据信号或者向SOC-A中的第一互连接口控制器150提供数据信号。数据缓冲器2035经由内存总线,从存储器300获取数据信号或者向存储器300提供数据信号。数据缓冲器2037经由用户自定义总线,与SOC-B中的主功能模块210进行通信。
在优选的实施例中,数据缓冲器2031、2035和2037分别为三态缓冲器。在三态缓冲器的使能输出端有效时,三态缓冲器实现正常逻辑输出,即逻辑值为0或1。在三态缓冲器的使能输出端无效时,三态缓冲器的输入端可以接收数据,但是输出端为高阻状态。
译码器2032和旁路开关阵列2033经由内存总线,从SOC-A中的第一互连接口控制器150获取地址和控制信号。译码器2032根据地址和控制信号产生选择信号。
在一个示例中,译码器2032根据地址和控制信号中的存储器片选信号产生选择信号。如果存储器片选信号为高电平,则选择信号指示存储操作。如果存储器片选信号为低电平,则选择信号指示扩展通信操作。
在另一个示例中,译码器2032根据地址和控制信号中的地址信号产生选择信号。例如,地址信号包括地址数据和保留数据。假定地址数据为N位,例如32位,那么可以将其中的M位(例如1位)作为保留位,用于指示SOC-A中的第一互连接口控制器150期望的操作类型。如果保留位为高电平,则选择信号指示存储操作。如果保留位为低电平,则选择信号指示扩展通信操作。
译码器2032将选择信号分别提供至数据缓冲器2031、2035和2037、旁路开关阵列2033、数据复用模块2034和用户总线控制器2036。
数据复用模块2034包括一个多路复用器2034a。根据选择信号,多路复用器2034a将数据缓冲器2031与数据缓冲器2035和2037中的一个相连。同时,根据选择信号,数据缓冲器2031以及数据缓冲器2035和2037中的一个处于选通状态,数据缓冲器2035和2037中的另一个处于未选通状态。
因此,第二互连接口控制器230根据选择信号,提供SOC-A中的第一互连接口控制器150与存储器300之间的连接,或者提供SOC-A中的第一互连接口控制器150与SOC-B中的主功能模块210之间的连接,从而实现路由功能。
进一步地,如果选择信号指示存储操作,则旁路开关阵列2303导通,使得地址和控制信号经由第二互连接口控制器230直接传送至存储器300。在第二互连接口控制器230两侧的内存总线中,数据信号以及地址和控制信号是完全对称的。如果选择信号指示扩展通信操作,则旁路开关阵列2303断开,用户总线控制器2306根据选择信号产生总线控制信号,并且用于控制与SOC-B中的主功能模块210之间的通信。
图5a和5b分别示出根据本发明的片上系统两个部分的互连接口控制器的第二实施例的示意性框图。如图所示,第一互连接口控制器150包括事件调度模块151、DMA与配置接口152和时序发生器153,第二互连接口控制器330包括多个译码器3302、开关阵列3303、用户总线控制器3306、数据利用模块3304和多个数据缓冲器3301、3305和3307。
在第一部分SOC-A中,第一互连接口控制器150可以采用标准的SDRAM控制器。事件调度模块151针对SOC-A中的第一主功能模块110的内存操作请求形成调度队列,进行最优排序、缓冲等调度。内存操作请求包括对外部存储器的读、写、刷新、充放电等操作请求。DMA与配置接口152提供与SOC-A中的第一主功能模块110之间的数据通道,用于接收自身的配置数据,以及为内存操作请求提供DMA数据通道。时序发生器153根据事件调度模块151的结果,产生第一互连接口控制器150具体操作的接口时序。
在第二部分SOC-B中,第二互连接口控制器330例如是包括第一内存接口、第二内存接口和内部扩展接口的设备扩展装置。第一内存接口提供第二互连接口控制器330与SOC-A中的第一互连接口控制器150之间的连接。第二内存接口提供第二互连接口控制器330与外部存储器300之间的连接。内部扩展接口提供第二互连接口控制器330与SOC-B中的主功能模块之间的连接。
第二互连接口控制器330包括与第一内存接口、第二内存接口和内部扩展接口分别对应的数据缓冲器3301、3305和3307。数据缓冲器3301经由内存总线,从SOC-A中的第一互连接口控制器150获取数据信号或者向SOC-A中的第一互连接口控制器150提供数据信号。数据缓冲器3305经由内存总线,从存储器300获取数据信号或者向存储器300提供数据信号。数据缓冲器3307经由用户自定义总线,与SOC-B中的主功能模块210进行通信。
数据缓冲器3301、3305和3307分别用于缓冲数据,从而可以匹配数据流的上游设备和下游设备之间的传输速率和提高驱动能力。
在优选的实施例中,数据缓冲器3301和3305分别由三态缓冲器组成。在三态缓冲器的使能输出端有效时,三态缓冲器实现正常逻辑输出,即逻辑值为0或1。在三态缓冲器的使能输出端无效时,三态缓冲器的输入端可以接收数据,但是输出端为高阻状态。数据缓冲3307则不需要由三态缓冲器组成,只需要提供输入输出缓冲功能即可。
译码器3302和旁路开关阵列3303经由内存总线,从SOC-A中的第一互连接口控制器150获取地址和控制信号。译码器3302根据地址和控制信号产生选择信号。
在另一个示例中,译码器3302根据地址和控制信号中的存储器片选信号产生选择信号。如果存储器片选信号为高电平,则选择信号指示存储操作。如果存储器片选信号为低电平,则选择信号指示扩展通信操作。
在另一个示例中,译码器3302根据地址和控制信号中的地址信号产生选择信号。例如,地址信号包括地址数据和保留数据。假定地址数据为N位,例如32位,那么可以将其中的M位(例如1位)作为保留位,用于指示SOC-A期望的操作类型。如果保留位为高电平,则选择信号指示存储操作。如果保留位为低电平,则选择信号指示扩展通信操作。
译码器3302将选择信号分别提供至数据缓冲器3301、3305和3307、旁路开关阵列3303、数据复用模块3304和用户总线控制器3306。
数据复用模块3304包括三个多路复用器3304a、3304b和3304c。根据选择信号,三个多路复用器3304a、3304b和3304c将数据缓冲器3301与数据缓冲器3305和3307中的一个相连。同时,根据选择信号,数据缓冲器3301、数据缓冲器3305和3307中的至少两个处于选通状态。
因此,第二互连接口控制器330根据选择信号,提供SOC-A中与存储器300之间的连接,或者提供SOC-A与SOC-B中的主功能模块210之间的连接,或者提供SOC-B与存储器300之间的连接,从而实现路由功能。
进一步地,如果选择信号指示存储操作,则旁路开关阵列3303导通,使得地址和控制信号经由第二互连接口控制器330直接传送至存储器300。在第二互连接口控制器330两侧的内存总线中,数据信号以及地址和控制信号是完全对称的。如果选择信号指示扩展通信操作,则旁路开关阵列3303断开,用户总线控制器3306根据选择信号产生总线控制信号,并且用于控制与SOC-B中的主功能模块210之间的通信。
图6a和6b分别示出根据本发明的片上系统两个部分的互连接口控制器的第三实施例的示意性框图。如图所示,第一互连接口控制器150包括事件调度模块151、DMA与配置接口152、时序发生器153和级联仲裁模块155,第二互连接口控制器230包括事件调度模块231、DMA与配置接口232、时序发生器233、总线申请与命令监测模块235和旁路通道236。
根据第二实施例的第一互连接口控制器150和第二互连接口控制器230分别在标准的存储器控制器基础上进行了修改,其中新增了级联仲裁功能。相应地,第一互连接口控制器150和第二互连接口控制器230之间的连接不仅包括标准的内存总线,而且包括附加的仲裁控制线X和仲裁控制线Y。
在第一部分SOC-A中,级联仲裁模块155用于协调第一部分SOC-1和第二部分SOC-B对外部存储器300的操作。无论第一部分SOC-1和第二部分SOC-B,只要发起对外部存储器300的操作,都必须向级联仲裁单元发出申请,在获得级联仲裁授权的情况下才能够操作外部存储器300。事件调度模块151针对SOC-A中的第一主功能模块110的内存操作请求形成调度队列,进行最优排序、缓冲等调度。内存操作请求包括对外部存储器的读、写、刷新、充放电等操作请求。DMA与配置接口152提供与SOC-A中的第一主功能模块110之间的数据通道,用于接收自身的配置数据,以及为内存操作请求提供DMA数据通道。时序发生器153根据事件调度模块151的结果,产生第一互连接口控制器150具体操作的接口时序。
在第二部分SOC-B,总线申请与命令监测模块235用于负责第二部分SOC-B使用内存总线的申请。事件调度模块231针对SOC-A中的第二主功能模块210的内存操作请求形成调度队列,进行最优排序、缓冲等调度。DMA与配置接口232提供与SOC-A中的第二主功能模块210之间的数据通道,用于接收自身的配置数据,以及为内存操作请求提供DMA数据通道。时序发生器233根据事件调度模块231的结果,产生第二互连接口控制器230具体操作的接口时序。旁路通道236根据内存总线授权信号,选择性地路由内存总线信号。
在工作中,总线申请与命令监测模块235经由附加的仲裁控制线X向第一部分SOC-A的级联仲裁模块155,发送第二部分SOC-B使用内存的内存总线请求信号,以及经由附加的仲裁控制线Y从第一部分SOC-A的级联仲裁模块155,获得第二部分SOC-B使用内存的内存总线授权信号。当第一部分SOC-A获得内存总线使用权时,旁路通道236将内存总线时序旁路至第二部分SOC-B中的时序发生器233。时序发生器233可以接收来自旁路通道236的时序信息,并做相应的时序和路径选通处理。
此外,总线申请与命令监测模块235还监测并解析来自第一部分SOC-A的内存操作请求,还可能需要存储某些内存操作请求。内存操作请求例如包括对外部存储器的读、写、刷新、充放电、模式配置等操作请求,其中需要存储的内存操作请求至少包含模式配置。所述总线申请与命令监测模块235的监测结果会送入事件调度模块231做进一步的分析,并在事件队列中插入适当的操作。
事件调度模块231至少包括一个调度队列,负责主存储器的访问操作调度,还包括另一调度队列,负责辅存储器的访问操作调度。两个调度引擎分别把对主存储器和辅存储器的访问操作压入相应的调度队列。上述访问操作包括第二部分SOC-B本身对存储器300的访问操作,还要协调第一部分SOC-A对存储器300的访问操作。
图7示出根据本发明的实施例的片上系统的控制方法的流程图。所述片上系统包括第一电路部分和第二电路部分,第一电路部分包括第一主功能模块和第一互连接口控制器,第二电路部分包括第二主功能模块和第二互连接口控制器。所述方法包括:
在步骤S1中,第一电路部分经由内存总线向第二电路部分传输内存总线信号;
在步骤S2中,第二电路部分的第二互连接口控制器接收所述内存总线信号,并根据所述内存总线信号产生选择信号;
在步骤S3中,所述第二电路部分的第二互连接口控制器根据所述选择信号提供第一电路部分、第二电路部分的主功能模块和外部存储器之间的访问路径。
在本实施例中,内存总线信号包括数据信号以及地址和控制信号。
在优选的实施例中,第一互连接口控制器为标准的存储器控制器,以及第二互连接口控制器为提供内存总线路由功能的设备扩展装置。
第一电路部分和外部存储器之间经由内存总线传输数据信号以及地址和控制信号。相应地,内存总线包括地址总线、数据总线和控制总线。控制总线用于向外部存储器提供控制信号,地址总线用于指定外部存储器中的选中单元地址。数据总线是双向的,用于从第一电路部分向外部存储器传输待写入的数据,或者用于从外部存储器向第一电路部分传输已经读取的数据。
第一电路部分和第二电路部分的第二主功能模块之间经由内存总线以及用户自定义总线传输数据信号以及地址和控制信号,第二互连接口控制器中的译码器根据地址和控制信号中的片选信号和/或地址信号产生选择信号。在一个示例中,地址信号包括地址数据和保留数据,所述保留数据指示存储操作或扩展通信操作。
所述片上系统控制方法提供以下访问路径中的至少之一:第一电路部分直接访问第二电路部分的第二互连接口控制器,第二电路部分的第二主功能模块直接访问第二电路部分的第二互连接口控制器,第一电路部分经由第二电路部分的第二互连接口控制器访问外部存储器,第二电路部分的第二主功能模块经由第二电路部分的第二互连接口控制器访问外部存储器,以及第一电路部分经由第二电路部分的第二互连接口控制器访问第二电路部分的第二主功能模块。
所述第二电路部分的第二互连接口控制器包括:第一端口,用于经由内存总线与外部的第一电路部分相连;第二端口,用于经由内存总线与外部的外部存储器相连;第三端口,用于经由用户自定义总线与第二电路部分的第二主功能模块相连;第一数据缓冲器,用于缓存经由第一端口传送的数据信号;第二数据缓冲器,用于缓存经由第二端口传送的数据信号;第三数据缓冲器,用于缓存经由第三端口传送的数据信号;译码器,用于根据经由第一端口传送的地址和控制信号,产生所述选择信号;数据复用模块,用于根据选择信号,将第一至第三数据缓冲器中的至少两个数据缓冲器相连;以及旁路开关阵列,所述旁路开关阵列根据选择信号,选择性地将地址和控制信号从第一端口传送至第二端口。
所述第一电路部分经由第二电路部分的第二互连接口控制器访问外部存储器包括:在读操作中,第一电路部分发出地址和控制信号给译码器和旁路开关阵列,译码器对地址和控制信号进行译码,解析出第一电路部分发出的指令为第一电路部分对外部存储器的读操作,旁路开关阵列打开,地址和控制信号经旁路开关阵列传递到外部存储器;外部存储器根据接收到的地址和控制信号后,外部存储器的相应数据信号依次提供给第二数据缓冲器、数据复用模块选择、第一数据缓冲器,第一电路部分读取第一数据缓冲器缓存的数据;在写操作中,第一电路部分发出地址和控制信号给译码器和旁路开关阵列,译码器对地址和控制信号进行译码,解析出第一电路部分发出的指令为第一电路部分对外部存储器的写操作,旁路开关阵列打开,地址和控制信号经旁路开关阵列传递到外部存储器;第一电路部分发出数据信号,数据信号依次经过第一数据缓冲器、数据复用模块、第二数据缓冲器,外部存储器根据接收到的地址和控制信号将第二数据缓冲器的数据写入到外部存储器相应地址。
优选地,所述第一电路部分经由第二电路部分的第二互连接口控制器访问第二电路部分的的第二主功能模块包括:在读操作中,第一电路部分发出地址和控制信号给译码器和旁路开关阵列,译码器对地址和控制信号进行译码,解析出第一电路部分发出的指令为第一电路部分对第二电路部分的第二主功能模块的读操作,旁路开关阵列关闭,地址和控制信号经译码器译码后由用户总线控制器发出地址和控制信号给第二电路部分的第二主功能模块;第二电路部分的第二主功能模块根据接用户总线控制器发出的地址和控制信号,第二电路部分的第二主功能模块的相应数据信号依次提供给第三数据缓冲器、数据复用模块选择、第一数据缓冲器,第一电路部分读取第一数据缓冲器缓存的数据;在写操作中,第一电路部分发出地址和控制信号给译码器和旁路开关阵列,译码器对地址和控制信号进行译码,解析出第一电路部分发出的指令为第一电路部分对第二电路部分的第二主功能模块的写操作,旁路开关阵列关闭,地址和控制信号经译码器译码后由用户总线控制器发出地址和控制信号给第二电路部分的第二主功能模块;第一电路部分发出数据信号,数据信号依次经过第一数据缓冲器、数据复用模块、第三数据缓冲器,第二电路部分的第二主功能模块根据用户总线控制器发出的地址和控制信号将第三数据缓冲器的数据写入到第二电路部分的第二主功能模块相应地址。
优选地,所述第二电路部分的第二主功能模块经由第二电路部分的第二互连接口控制器访问外部存储器包括:在读操作中,第一电路部分发出地址和控制信号给译码器和旁路开关阵列,译码器对地址和控制信号进行译码,解析出第一电路部分发出的指令为第二电路部分的第二主功能模块对外部存储器的读操作,旁路开关阵列打开,同时地址和控制信号经译码器译码后由用户总线控制器发出地址和控制信号给第二电路部分的第二主功能模块;外部存储器根据接收到的地址和控制信号后,外部存储器的相应数据信号依次提供给第二数据缓冲器、数据复用模块选择、第三数据缓冲器,第二电路部分的第二主功能模块读取第三数据缓冲器缓存的数据;在写操作中,第一电路部分发出地址和控制信号给译码器和旁路开关阵列,译码器对地址和控制信号进行译码,解析出第一电路部分发出的指令为第二电路部分的第二主功能模块对外部存储器的写操作,旁路开关阵列打开,同时地址和控制信号经译码器译码后由用户总线控制器发出地址和控制信号给第二电路部分的第二主功能模块;第二电路部分的第二主功能模块根据用户总线发出的地址和控制信号将数据依次提供给第三数据缓冲器、数据复用模块、第二数据缓冲器,从而将第二电路部分的第二主功能模块的数据写入外部存储器相应地址。
依照本发明的实施例如上文所述,这些实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施例。显然,根据以上描述,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地利用本发明以及在本发明基础上的修改使用。本发明的保护范围应当以本发明权利要求所界定的范围为准。
Claims (20)
1.一种片上系统,包括第一电路部分和第二电路部分,其中,
第一电路部分包括第一主功能模块和第一互连接口控制器,
第二电路部分包括第二主功能模块和第二互连接口控制器,
第一互连接口控制器和第二互连接口控制器分别提供用于互连的内存接口,使得第一电路部分和第二电路部分经由第一内存总线连接在一起;
其中,第二互连接口控制器还提供用于连接外部存储器的内存接口,使得第一电路部分和第二电路部分经由第二内存总线访问外部存储器;
第二互连接口控制器为提供内存总线路由功能的设备扩展装置;
所述设备扩展装置包括第一内存接口、第二内存接口和内部扩展接口,第一内存接口用于与第一互连接口控制器相连接,第二内存接口用于与外部存储器相连接,内部扩展接口用于与第二主功能模块相连接;
所述设备扩展装置根据第一内存总线上的内存总线信号产生选择信号,使得第一内存接口、第二内存接口和内部扩展接口中的任意两个相连,从而提供内存总线的路由功能,所述内存总线信号包括数据信号以及地址和控制信号。
2.根据权利要求1所述的片上系统,其中,第一电路部分是由数字电路和/或模拟电路组成的通用部分,以及第二电路部分是由数字电路和/或模拟电路组成的专用部分。
3.根据权利要求2所述的片上系统,其中,第一主功能模块包括处理器、用于支持处理器调试和工作的基本设备、以及用于提供时钟信号的锁相环。
4.根据权利要求3所述的片上系统,其中,第一主功能模块还包括核心设备,所述核心设备是相关的多个不同产品系列中的共性设备。
5.根据权利要求2所述的片上系统,其中,第二主功能模块包括用于提供主要功能的专用设备、用于提供控制逻辑的控制模块、以及用于提供时钟信号的锁相环。
6.根据权利要求5所述的片上系统,其中,第二主功能模块还包括用于为第二电路部分提供I/O支持的I/O模块。
7.根据权利要求1所述的片上系统,其中,所述内存总线为SDRAM总线。
8.根据权利要求1所述的片上系统,其中,第一互连接口控制器为标准的存储器控制器。
9.根据权利要求1所述的片上系统,其中,所述第一互连接口控制器在标准的存储器控制器的基础上包括附加的级联仲裁模块,以及第二互连接口控制器在标准的存储器控制器的基础上包括附加的总线申请与命令监测模块和旁路通道。
10.根据权利要求9所述的片上系统,其中,所述第一互连接口控制器的级联仲裁模块和第二互连接口控制器的总线申请与命令监测模块之间经由仲裁控制线相连接,使得第二电路部分经由仲裁控制线向第一电路部分提出内存使用请求,并且经由仲裁控制线从第一电路部分获得内存使用授权。
11.根据权利要求10所述的片上系统,其中,当第一电路部分获得内存总线使用权时,第二互连接口控制器的旁路通道将内存总线时序旁路至第二互连接口控制器的时序发生器。
12.根据权利要求1所述的片上系统,其中,第一电路部分和第二电路部分位于相同半导体管芯的不同区域和/或层,或者封装成一个半导体芯片的不同半导体管芯,或者是不同的半导体芯片。
13.一种片上系统控制方法,所述片上系统包括第一电路部分和第二电路部分,第一电路部分包括第一主功能模块和第一互连接口控制器,第二电路部分包括第二主功能模块和第二互连接口控制器,所述方法包括:
第一电路部分经由内存总线向第二电路部分传输内存总线信号;
第二电路部分的第二互连接口控制器接收所述内存总线信号,并根据所述内存总线信号产生选择信号;
所述第二电路部分的第二互连接口控制器根据所述选择信号提供第一电路部分、第二电路部分的主功能模块和外部存储器之间的访问路径,所述内存总线信号包括数据信号以及地址和控制信号。
14.根据权利要求13所述的片上系统控制方法,其中,第一互连接口控制器为标准的存储器控制器,以及第二互连接口控制器为提供内存总线路由功能的设备扩展装置。
15.根据权利要求14所述的片上系统控制方法,所述第二互连接口控制器根据所述内存总线信号产生选择信号包括:
译码器根据地址和控制信号中的片选信号和/或地址信号产生选择信号。
16.根据权利要求14所述的片上系统控制方法,其中,所述片上系统控制方法提供以下访问路径中的至少之一:第一电路部分直接访问第二电路部分的第二互连接口控制器,第二电路部分的第二主功能模块直接访问第二电路部分的第二互连接口控制器,第一电路部分经由第二电路部分的第二互连接口控制器访问外部存储器,第二电路部分的第二主功能模块经由第二电路部分的第二互连接口控制器访问外部存储器,以及第一电路部分经由第二电路部分的第二互连接口控制器访问第二电路部分的第二主功能模块。
17.根据权利要求16所述的片上系统控制方法,其中,所述第二电路部分的第二互连接口控制器包括:
第一端口,用于经由内存总线与外部的第一电路部分相连;
第二端口,用于经由内存总线与外部的外部存储器相连;
第三端口,用于经由用户自定义总线与第二电路部分的第二主功能模块相连;
第一数据缓冲器,用于缓存经由第一端口传送的数据信号;
第二数据缓冲器,用于缓存经由第二端口传送的数据信号;
第三数据缓冲器,用于缓存经由第三端口传送的数据信号;
译码器,用于根据经由第一端口传送的地址和控制信号,产生所述选择信号;
数据复用模块,用于根据选择信号,将第一至第三数据缓冲器中的至少两个数据缓冲器相连;以及
旁路开关阵列,所述旁路开关阵列根据选择信号,选择性地将地址和控制信号从第一端口传送至第二端口。
18.根据权利要求16所述的片上系统控制方法,其中所述第一电路部分经由第二电路部分的第二互连接口控制器访问外部存储器包括:
在读操作中,第一电路部分发出地址和控制信号给译码器和旁路开关阵列,译码器对地址和控制信号进行译码,解析出第一电路部分发出的指令为第一电路部分对外部存储器的读操作,旁路开关阵列打开,地址和控制信号经旁路开关阵列传递到外部存储器;外部存储器根据接收到的地址和控制信号后,外部存储器的相应数据信号依次提供给第二数据缓冲器、数据复用模块选择、第一数据缓冲器,第一电路部分读取第一数据缓冲器缓存的数据;
在写操作中,第一电路部分发出地址和控制信号给译码器和旁路开关阵列,译码器对地址和控制信号进行译码,解析出第一电路部分发出的指令为第一电路部分对外部存储器的写操作,旁路开关阵列打开,地址和控制信号经旁路开关阵列传递到外部存储器;第一电路部分发出数据信号,数据信号依次经过第一数据缓冲器、数据复用模块、第二数据缓冲器,外部存储器根据接收到的地址和控制信号将第二数据缓冲器的数据写入到外部存储器相应地址。
19.根据权利要求16所述的片上系统控制方法,其中所述第一电路部分经由第二电路部分的第二互连接口控制器访问第二电路部分的第二主功能模块包括:
在读操作中,第一电路部分发出地址和控制信号给译码器和旁路开关阵列,译码器对地址和控制信号进行译码,解析出第一电路部分发出的指令为第一电路部分对第二电路部分的第二主功能模块的读操作,旁路开关阵列关闭,地址和控制信号经译码器译码后由用户总线控制器发出地址和控制信号给第二电路部分的第二主功能模块;第二电路部分的第二主功能模块根据接用户总线控制器发出的地址和控制信号,第二电路部分的第二主功能模块的相应数据信号依次提供给第三数据缓冲器、数据复用模块选择、第一数据缓冲器,第一电路部分读取第一数据缓冲器缓存的数据;
在写操作中,第一电路部分发出地址和控制信号给译码器和旁路开关阵列,译码器对地址和控制信号进行译码,解析出第一电路部分发出的指令为第一电路部分对第二电路部分的第二主功能模块的写操作,旁路开关阵列关闭,地址和控制信号经译码器译码后由用户总线控制器发出地址和控制信号给第二电路部分的第二主功能模块;第一电路部分发出数据信号,数据信号依次经过第一数据缓冲器、数据复用模块、第三数据缓冲器,第二电路部分的第二主功能模块根据用户总线控制器发出的地址和控制信号将第三数据缓冲器的数据写入到第二电路部分的第二主功能模块相应地址。
20.根据权利要求16所述的片上系统控制方法,其中所述第二电路部分的第二主功能模块经由第二电路部分的第二互连接口控制器访问外部存储器包括:
在读操作中,第一电路部分发出地址和控制信号给译码器和旁路开关阵列,译码器对地址和控制信号进行译码,解析出第一电路部分发出的指令为第二电路部分的第二主功能模块对外部存储器的读操作,旁路开关阵列打开,同时地址和控制信号经译码器译码后由用户总线控制器发出地址和控制信号给第二电路部分的第二主功能模块;外部存储器根据接收到的地址和控制信号后,外部存储器的相应数据信号依次提供给第二数据缓冲器、数据复用模块选择、第三数据缓冲器,第二电路部分的第二主功能模块读取第三数据缓冲器缓存的数据;
在写操作中,第一电路部分发出地址和控制信号给译码器和旁路开关阵列,译码器对地址和控制信号进行译码,解析出第一电路部分发出的指令为第二电路部分的第二主功能模块对外部存储器的写操作,旁路开关阵列打开,同时地址和控制信号经译码器译码后由用户总线控制器发出地址和控制信号给第二电路部分的第二主功能模块;第二电路部分的第二主功能模块根据用户总线发出的地址和控制信号将数据依次提供给第三数据缓冲器、数据复用模块、第二数据缓冲器,从而将第二电路部分的第二主功能模块的数据写入外部存储器相应地址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510056551.4A CN104598407B (zh) | 2015-02-03 | 2015-02-03 | 片上系统及控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510056551.4A CN104598407B (zh) | 2015-02-03 | 2015-02-03 | 片上系统及控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104598407A CN104598407A (zh) | 2015-05-06 |
CN104598407B true CN104598407B (zh) | 2018-11-30 |
Family
ID=53124212
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510056551.4A Expired - Fee Related CN104598407B (zh) | 2015-02-03 | 2015-02-03 | 片上系统及控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104598407B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107529087B (zh) * | 2017-09-29 | 2018-03-20 | 杨丽 | 片上盒节目统计平台 |
CN109376098B (zh) * | 2018-10-12 | 2022-12-27 | 芯来科技(武汉)有限公司 | 前向旁路缓存电路 |
CN116680205B (zh) * | 2023-08-03 | 2023-10-03 | 中科亿海微电子科技(苏州)有限公司 | 一种ddr内存数据通道接口扩展电路、系统及方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101334733A (zh) * | 2007-06-26 | 2008-12-31 | 研华股份有限公司 | 系统管理模式的模拟方法 |
CN204515761U (zh) * | 2015-02-03 | 2015-07-29 | 杭州士兰控股有限公司 | 片上系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6983350B1 (en) * | 1999-08-31 | 2006-01-03 | Intel Corporation | SDRAM controller for parallel processor architecture |
CN101814012A (zh) * | 2010-05-20 | 2010-08-25 | 锐迪科科技有限公司 | Sdram存储器结构及数据读写方法 |
CN103246623B (zh) * | 2013-05-20 | 2016-08-31 | 杭州士兰控股有限公司 | Soc计算设备扩展系统 |
-
2015
- 2015-02-03 CN CN201510056551.4A patent/CN104598407B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101334733A (zh) * | 2007-06-26 | 2008-12-31 | 研华股份有限公司 | 系统管理模式的模拟方法 |
CN204515761U (zh) * | 2015-02-03 | 2015-07-29 | 杭州士兰控股有限公司 | 片上系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104598407A (zh) | 2015-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230131698A1 (en) | Data processing engine arrangement in a device | |
US10055807B2 (en) | Hardware architecture for acceleration of computer vision and imaging processing | |
US9342471B2 (en) | High utilization multi-partitioned serial memory | |
WO2016192217A1 (zh) | 一种apb总线桥 | |
US7277975B2 (en) | Methods and apparatuses for decoupling a request from one or more solicited responses | |
CN111338996B (zh) | 一种支持多协议的复合总线控制器 | |
CN104598407B (zh) | 片上系统及控制方法 | |
US11182110B1 (en) | On-chip memory block circuit | |
CN104991880B (zh) | 一种基于pci‑e接口的fc‑ae‑asm通讯板卡 | |
JP2023505261A (ja) | メモリと分散計算アレイとの間のデータ転送 | |
CN111736115A (zh) | 基于改进型sgdma+pcie的mimo毫米波雷达高速传输方法 | |
CN204515761U (zh) | 片上系统 | |
CN104598406B (zh) | 扩展功能单元及计算设备扩展系统和扩展方法 | |
Ma et al. | Design and implementation of an advanced DMA controller on AMBA-based SoC | |
Sarojini et al. | Implementation and optimization of throughput in high speed memory interface using AXI protocol | |
Knapp et al. | Field configurable system-on-chip device architecture | |
CN109933553A (zh) | 一种控制系统及其设计方法、一组控制系统、电子装置 | |
CN115328832A (zh) | 一种基于pcie dma的数据调度系统与方法 | |
WO2015117524A1 (zh) | 一种时钟树实现方法、系统芯片及计算机存储介质 | |
Verma et al. | Pcie bus: A state-of-the-art-review | |
Chandra et al. | Design of PCIe-DMA bridge interface for High Speed Ethernet Applications | |
CN112231261A (zh) | 一种用于axi总线的id号压缩装置 | |
Ammendola et al. | Architectural improvements and technological enhancements for the APEnet+ interconnect system | |
Guha et al. | Design and implementation of open-source SATA III core for Stratix V FPGAs | |
Lee et al. | Design of eMMC Controller with Virtual Channels for Multiple Processors |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
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: 20181130 Termination date: 20210203 |