CN105320637A - Flash数据读取电路 - Google Patents
Flash数据读取电路 Download PDFInfo
- Publication number
- CN105320637A CN105320637A CN201510689488.8A CN201510689488A CN105320637A CN 105320637 A CN105320637 A CN 105320637A CN 201510689488 A CN201510689488 A CN 201510689488A CN 105320637 A CN105320637 A CN 105320637A
- Authority
- CN
- China
- Prior art keywords
- ahb
- flash
- circuit
- ahb bus
- 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.)
- Pending
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/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4208—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
-
- 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/1668—Details of memory controller
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
Abstract
本发明提供一种FLASH数据读取电路,是应用在SOC芯片内部,用以提高外部FLASH数据读取速度的电路设计。该FLASH数据读取电路包括AHB总线接口电路,用于根据接收到的AHB主设备指令来配置参数,以及锁存AHB总线上的地址和数据;AHB协议转换电路,使用AHB标准协议,并对FLASH接口的数据读取使用特殊指令;及FLASH?SPI串行接口控制电路,用于在接收到所述特殊指令的控制信号后读写FLASH设备。本发明提出一个基于AHB总线的修改方案,既能保证SPI接口的简洁,降低系统成本,又能保证系统的高性能。
Description
技术领域
本发明涉及FLASH数据读取电路,尤其涉及一种提高AHB总线数据输入效率的FLASH数掘读取电路。
背景技术
在系统设计中,为了满足相应的性能,必须有很高的代码执行速度,故访问外部FLASH的代码速度要有保证。在以往的设计中,并行接口闪存(FLASH)被釆用来达到告诉数据访问的目的。但是并行按口占用的芯片管脚很多,面对成本要求越来越严格的市场现状,串行接口SPI逐渐取代并行接口,成为系统方案不可缺少的部分。通常系统为了简化设计,SPI接口一般直接和APB总线相连。指令的读取通过DMA来进行搬运。但是高级外围总线(AdvancedPeriphera1Bus;APB)的设计主要是针对低功耗,频率比较低。串行接口SPI的数掘位宽为一个比特,这就使得数据传输速度下降,成为系统性能提高的瓶颈。系统的成本和性能成为矛盾。为了使读取FLASH的数据频率提高,可以把FLASH串行外围接口(Seria1periphera1Interface;SPI)直接和AHB高速总线相连接,其目的是进而増加数据吞吐量。这样的设计还存在一个问题:SPI的数据读取速度远低于系统运行的速度,而且高级系统总线(AHB;AdvancedHighperformanceBus)是系统的高速总线,一旦被占用则其他需要数据传输的主设备将被挂起,直到SPI接口数据传输结束。这很大程度上损害了系统的整体性能。针对这个现象,本发明提出一个基于AHB总线的修改方案,既能保证SPI接口的简洁,又能保证系统的高性能。
发明内容
本发明的目的是提供一种应用在SOC芯片内部的FLASH数据读取电路,用以提高外部FLASH数据读取速度,同时可以避免DMA的设计。
本发明主要包含三个部分:AHB总线接口电路,用于根据接收到的AHB主设备指令来配置参数,以及锁存AHB总线上的地址和数据;AHB协议转换电路,使用AHB标准协议,并对FLASH设备的数据读取使用特殊指令;及FLASHSPI串行接口控制电路,用于在接到所述特殊指令的控制信号后读写FLASH设备。
AHB总线接口电路解析AHB总线协议,并锁存相关的地址、控制和数据。AHB协议转換电路通过AHB标准协议的AHB总线命令,将读指令分为两步:先写地址、长度,然后再读取数据。特殊指令包括系统通过处理器发出的特殊写命令,以及根据FLASH的传输状况发出的读取命令;AHB总线接口电路解析AHB总线命令,如果解析得到特殊写命令,就立刻通过HRESP信号回复总线一个OKAY状态,使得AHB总线被释放;FLASHSPI串行接口控制电路计算数据读取所需要的时钟数,在数据真正准备好之后,系统再通过AHB总线发出一个读取命令来得到数掘。FLASHSPI串行接口控制电路包括直接和AHB总线相连接的SPI接口,读、写复用的内部FIF0,和用于和SPI接口通信的通信电路;FLASHSPI串行接口控制电路接收到特殊指令后,立刻按照FLASH接口标准将数据读取到FIF0中。
本发明的优点在于可以兼顾系统的成本和性能两方面需求。而且使用的是标准AHB总线传输协议,增加部分是在基本协议层以上,系统软件修改十分简単,而且对后期验证没有任何影响。
附图说明
图1为根据本发明一实施例的系统电路的结构示意图。
图2为根掘本发明FLASH数据读取电路的内部结构示意图。
图3为本发明一实施例的FLASH数据读取电路的工作波形图。
具体实施方式
本发明的设计方案延用通用AHB协议,不改动最底层的AHB传输协议,只修改上层协议解析部分,从而达到统一验证环境以及灵活实现,方便系统移植的目的。本发明不仅能提高FLASH数据读取效率,而且基本上没有增加系统的设计复杂度。系统结构示意图如图1所示。图1中,SDRAM通过外部存储器接口连接到AHB总线,RISC处理器直接连接到AHB总线,FLASH设备通过FLASH数据读取电路连接到AHB总线。
为实现系统的高速执行效率,指令从FLASH中读取的速度和效率都有一定要求。故本发明将FLASHSPI串行接口和AHB高速总线相连接以达到数据传输的高频率,高带宽。同时为了保证系统其他模块的高性能,AHB总线不能被FLASH接口长时间占用,仅仅在指令数据集中传输的时候才占用总线。
如图2所示,本发明的FLASH数据读取电路主要由三部分电路组成:AHB总线接口电路,AHB协议转换电路,及FLASHSPI申行接口控制电路。
AHB总线接口电路用于根据接收到的AHB主设备指令来配置参数,以及锁存AHB总线上的地址和数掘。AHB总线接口电路解析AHB总线协议,并锁存相关的地址、控制和数据。其中地址和控制信号放入地址和控制电路,数据存放在数据FIF0中。
AHB协议转换电路需要系统指令配合实现高速数据读取。AHB协议转换电路通过AHB总线命令,将读指令分为两步:先写地址、长度,然后再读取数据。FLASH数据读取被本发明分为两段:系统首先通过RISC处理器发出特殊写命令;然后再根据FLASH的传输状况发出读取命令。特殊写命令通过AHB总线到达AHB总线接口电路。AHB总线接口电路解析AHB总线命令,看到是特殊写命令,就立刻通过HRESP信号回复总线一个OKAY状态。
这就使得AHB总线被释放,其他总线上的主设备可以继续访问总线。而通常的读命令则必须等待设备数据准备好,设备再通过HREADY信号高速AHB总线取数据。这样的实现使得AHB总线一直被占用,直到数据被读取出来,系统的效率非常低下。
FLASHSPI串行接口控制电路包括直接和AHB总线相连接的SPI接口,读、写复用的内部FIF0,和用于和SPI接口通信的通信电路。在接收到系统特殊写命令后,FLASHSPI串行接口控制电路立刻按照FLASH接口标准将数据读取到内部FIF0中。根据FLASH的读取协议,FLASHSPI串行接口控制电路可以很容易计算出数据读取所需要的时钟数。在数据真正准备好之后,系统再通过AHB总线发出一个读取命令就可以拿到数掘。在特殊写命令和后续读取命令之间的AHB就可以被系统其他模块任意使用。
图3为本发明实现电路的时序波形示意图。根据AHB协议首先发出特殊写指令,HWRITE为高表示对目的地址写,HADDR总线上是SPI接口内部的特设寄存器,用于存放目的地址和所要读取数据长度的信息。目的地址和数据长度由HWDATA提供。CONTROL上是AHB标准的控制信息。在特殊写指令完成后,SPI接口电路立刻回复OKAY,释放AHB总线。同时启动内部电路从FLASH读出的数据到FIF0中。等到数据准备完成后,系统再发出数据读取指令,这个指令和通常AHB总线读取指令完全一样。HWRITE由于是读取数掘而貴为低,HADDR不断发出待读取数据的地址,从FIF0中取出的数据就体现在HRDATA总线上。至此,一个完整的读取过程结束。
本发明的优点在于完全和AHB协议兼容,不仅方便设计,而且在验证方面能节省很多时间。此外,AHB高速总线的性能得到保障,FLASH读取数据的效率很高,基本上和系统时钟同频。而且完全避免AHB总线等待外部数据准备的情况。最后,排除了DMA设计的需求,简化系统设计复杂度,保持模块设计相当的独立性,进一步节省了芯片的成本和设计风险。
Claims (8)
1.一种FLASH数据读取电路,包括AHB总线接口电路、AHB协议转换电路、FLASHSPI串行接口控制电路,其特征在于:
所述的AHB总线接口电路,用于根掘接收到的AHB主设备指令来配置参数,以及锁存AHB总线上的地址和数据;
AHB协议转换电路,使用AHB标准协议,并对FLASH设备的数据读取使用特殊指令;及FLASHSPI串行接口控制电路,用于在接收到所述特殊指令的控制信号后读写FLASH设备。
2.根据权利要求1所述的FLASH数掘读取电路,其特征在于,所述的AHB总线接口电路解析AHB总线协议,并锁存相关的地址、控制和数据。
3.根据权利要求1所述的FLASH数据读取电路,其特征在于,所述的AHB协议转換电路通过AHB标准协议的AHB总线命令,将读指令分为两步:先写地址、长度,然后再读取数据。
4.根据权利要求1或3所述的FLASH数据读取电路,其特征在于,所述特殊指令包括系统通过处理器发出的特殊写命令,以及根据FLASH的传输状况发出的读取命令。
5.根据权利要求4所述的FLASH数掘读取电路,其特征在于,所述的AHB总线接口电路解析AHB总线命令,如果解析得到特殊写命令,就立刻通过HRESP信号回复总线一个OKAY状态,使得AHB总线被释放。
6.根据权利要求5所述的FLASH数据读取电路,其特征在于,所述的FLASHSPI串行接口控制电路计算数据读取所需要的时钟数,在数据真正准备好之后,系统再通过AHB总线发出一个读取命令来得到数掘。
7.根据权利要求1或2所述的FLASH数据读取电路,其特征在于,所述的FLASHSPI串行接口控制电路包括直接和AHB总线相连接的SPI接口,读、写复用的内部FIF0和用于和SPI接口通信的通信电路。
8.根据权利要求7所述的FLASH数据读取电路,其特征在于,所述的FLASHSPI串行接口控制电路接收到特殊指令后,立刻按照FLASH接口标准将数据读取到FIF0中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510689488.8A CN105320637A (zh) | 2015-10-23 | 2015-10-23 | Flash数据读取电路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510689488.8A CN105320637A (zh) | 2015-10-23 | 2015-10-23 | Flash数据读取电路 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105320637A true CN105320637A (zh) | 2016-02-10 |
Family
ID=55248044
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510689488.8A Pending CN105320637A (zh) | 2015-10-23 | 2015-10-23 | Flash数据读取电路 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105320637A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107291655A (zh) * | 2017-06-14 | 2017-10-24 | 北方电子研究院安徽有限公司 | 一种带APB总线接口的SoC自举IP电路 |
CN108091366A (zh) * | 2017-12-29 | 2018-05-29 | 中国电子科技集团公司第五十八研究所 | Flash读取电路和读取方法 |
WO2021089303A1 (en) * | 2019-11-05 | 2021-05-14 | Shenzhen GOODIX Technology Co., Ltd. | Protocol translator module system and method using said protocol translator module system |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101295284A (zh) * | 2007-04-27 | 2008-10-29 | 上海芯致电子科技有限公司 | Flash数据读取电路 |
CN102053937A (zh) * | 2009-10-30 | 2011-05-11 | 上海研祥智能科技有限公司 | 在lpc总线中调用spi接口的闪存的方法及系统 |
CN102710890A (zh) * | 2012-04-06 | 2012-10-03 | 东莞中山大学研究院 | 双ahb总线的视频处理片上系统 |
CN104461967A (zh) * | 2014-12-25 | 2015-03-25 | 中国电子科技集团公司第三十八研究所 | 一种支持同步和异步传输模式的并行数据接口 |
-
2015
- 2015-10-23 CN CN201510689488.8A patent/CN105320637A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101295284A (zh) * | 2007-04-27 | 2008-10-29 | 上海芯致电子科技有限公司 | Flash数据读取电路 |
CN102053937A (zh) * | 2009-10-30 | 2011-05-11 | 上海研祥智能科技有限公司 | 在lpc总线中调用spi接口的闪存的方法及系统 |
CN102710890A (zh) * | 2012-04-06 | 2012-10-03 | 东莞中山大学研究院 | 双ahb总线的视频处理片上系统 |
CN104461967A (zh) * | 2014-12-25 | 2015-03-25 | 中国电子科技集团公司第三十八研究所 | 一种支持同步和异步传输模式的并行数据接口 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107291655A (zh) * | 2017-06-14 | 2017-10-24 | 北方电子研究院安徽有限公司 | 一种带APB总线接口的SoC自举IP电路 |
CN107291655B (zh) * | 2017-06-14 | 2020-10-09 | 北方电子研究院安徽有限公司 | 一种带APB总线接口的SoC自举IP电路 |
CN108091366A (zh) * | 2017-12-29 | 2018-05-29 | 中国电子科技集团公司第五十八研究所 | Flash读取电路和读取方法 |
CN108091366B (zh) * | 2017-12-29 | 2021-01-29 | 中国电子科技集团公司第五十八研究所 | Flash读取电路和读取方法 |
WO2021089303A1 (en) * | 2019-11-05 | 2021-05-14 | Shenzhen GOODIX Technology Co., Ltd. | Protocol translator module system and method using said protocol translator module system |
CN114641763A (zh) * | 2019-11-05 | 2022-06-17 | 深圳市汇顶科技股份有限公司 | 协议转换器模块系统和使用该协议转换器模块系统的方法 |
CN114641763B (zh) * | 2019-11-05 | 2024-04-19 | 深圳市汇顶科技股份有限公司 | 协议转换器模块系统和使用该协议转换器模块系统的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102023956B (zh) | 集成电路芯片中串行外设从器件接口结构及数据读写方法 | |
US9973347B2 (en) | Protocol converter between CPCI bus and ISA bus and conversion method thereof | |
CN105824777B (zh) | 一种spi总线在ipran设备中的实现方法 | |
CN105224482A (zh) | 一种fpga加速卡高速存储系统 | |
CN101599004B (zh) | 基于fpga的sata控制器 | |
CN101344870B (zh) | 一种复用性强的fifo控制模块及其管理内存的方法 | |
CN111338996B (zh) | 一种支持多协议的复合总线控制器 | |
CN102169470A (zh) | 一种ahb总线到bvci总线的转换桥 | |
CN104915303A (zh) | 基于PXIe总线的高速数字I/O系统 | |
CN103036685A (zh) | 基于dp83849c的afdx接口转换器 | |
CN110837486A (zh) | 一种基于FPGA的FlexRay-CPCIe通信模块 | |
CN203812236U (zh) | 一种基于处理器和现场可编程门阵列的数据交换系统 | |
CN102752180A (zh) | Can总线网络节点的实现方法 | |
CN105320637A (zh) | Flash数据读取电路 | |
CN104021099B (zh) | 一种控制数据传输的方法及dma控制器 | |
US8626975B1 (en) | Communication interface with reduced signal lines | |
CN104239252A (zh) | 数据存储系统的数据传输方法、装置及系统 | |
US20170286357A1 (en) | Method, Apparatus And System For Communicating Between Multiple Protocols | |
CN105786741A (zh) | 一种soc高速低功耗总线及转换方法 | |
CN101295284A (zh) | Flash数据读取电路 | |
CN110941582A (zh) | 一种bmc芯片的usb总线结构及其通信方法 | |
CN101344875B (zh) | 一种片上集成系统SoC的APB总线桥 | |
CN105608028A (zh) | 基于emif接口和双口ram实现dsp与fpga高速通信方法 | |
CN203251321U (zh) | 一种can总线与1553b总线通讯转换装置 | |
CN104156336A (zh) | 一种usb2.0接口芯片的控制方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160210 |