CN105320637A - Flash数据读取电路 - Google Patents

Flash数据读取电路 Download PDF

Info

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
Application number
CN201510689488.8A
Other languages
English (en)
Inventor
张镭
李春峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xi'an Csg Jingxiang Optoelectronic Technology Co Ltd
Original Assignee
Xi'an Csg Jingxiang Optoelectronic Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Xi'an Csg Jingxiang Optoelectronic Technology Co Ltd filed Critical Xi'an Csg Jingxiang Optoelectronic Technology Co Ltd
Priority to CN201510689488.8A priority Critical patent/CN105320637A/zh
Publication of CN105320637A publication Critical patent/CN105320637A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4208Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details 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数据读取电路
技术领域
本发明涉及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中。
CN201510689488.8A 2015-10-23 2015-10-23 Flash数据读取电路 Pending CN105320637A (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 中国电子科技集团公司第三十八研究所 一种支持同步和异步传输模式的并行数据接口

Patent Citations (4)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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