CN102279828A - 一种PCI接口转Flash接口的控制装置及方法 - Google Patents

一种PCI接口转Flash接口的控制装置及方法 Download PDF

Info

Publication number
CN102279828A
CN102279828A CN2011102085176A CN201110208517A CN102279828A CN 102279828 A CN102279828 A CN 102279828A CN 2011102085176 A CN2011102085176 A CN 2011102085176A CN 201110208517 A CN201110208517 A CN 201110208517A CN 102279828 A CN102279828 A CN 102279828A
Authority
CN
China
Prior art keywords
pci
flash
interface
state
machine control
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
CN2011102085176A
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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN2011102085176A priority Critical patent/CN102279828A/zh
Publication of CN102279828A publication Critical patent/CN102279828A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Bus Control (AREA)

Abstract

本发明公开了一种PCI接口转Flash接口的控制装置及方法,装置包括:PCI接口模块,通过PCI接口与PCI总线连接,与PCI主设备进行数据通讯;状态机控制模块,与PCI接口模块连接,用于根据PCI接口模块获取的所述PCI总线上的操作信息,确定状态机控制模块的状态;Flash接口模块,与状态机控制模块连接,且通过Flash接口与Flash存储器连接,用于根据状态机控制模块的状态,对Flash存储器进行访问。本发明通过使用状态机控制实现PCI接口到Flash接口的转化,可以更好的保证PCI接口到Flash存储器接口访问的可靠性及传输的高效性。

Description

一种PCI接口转Flash接口的控制装置及方法
技术领域
本发明涉及通讯技术领域,特别是涉及一种PCI接口转Flash接口的控制装置及方法。
背景技术
随着以太网技术的高速发展。以太网已经成为人们日常工作和生活必不可少的工具。而在以太网交换设备上用户对于数据传送需求越来越多,而且传输速率的要求越来越高,这就要求CPU(Central Processing Unit,中央处理器)与周边设备能实现高速结合。PCI(Peripheral component interconnect,外设组件互连标准)接口即可满足此类需求;并且整个交换设备一般选用Flash(闪存,英文名称为″Flash Memory″,简称为″Flash″)作为存储设备,因而PCI接口到Flash接口的转化具有相当重要的地位和作用。
目前Flash主要应用于计算机平台中,与CPU、DDR(Double Data Rate,双倍速率同步动态随机存储器)、声卡、显卡等构成一个计算机平台***,多将Flash用于存储BOOT启动程序,或者存储临时文件等,应用较为单一。
现有技术中的计算机平台架构,PCI接口上挂接Flash作为BOOT存储器,应用单一,而且并未提及其PCI接口到Flash接口转换的具体实现策略。
发明内容
本发明要解决的技术问题是提供一种PCI接口转Flash接口的控制装置及方法,用以解决现有技术PCI接口上挂接Flash作为BOOT存储器应用单一的问题。
为解决上述技术问题,一方面,本发明提供一种PCI接口转Flash接口的控制装置,所述装置包括:
PCI接口模块,通过PCI接口与PCI总线连接,与PCI主设备进行数据通讯;
状态机控制模块,与所述PCI接口模块连接,用于根据所述PCI接口模块获取的所述PCI总线上的操作信息,确定状态机控制模块的状态;
Flash接口模块,与所述状态机控制模块连接,且通过Flash接口与Flash存储器连接,用于根据所述状态机控制模块的状态,对所述Flash存储器进行访问。
进一步,当所述PCI总线上的操作信息为对所述Flash存储器的写操作时,所述状态机控制模块的状态为写Flash状态,所述Flash接口模块向所述Flash存储器发送写指令和写数据格式;待写操作结束后,所述状态机控制模块的状态由写Flash状态跳转为PCI空闲状态。
进一步,当所述PCI总线上的操作信息为对所述Flash存储器的读操作时,所述状态机控制模块的状态为读Flash状态,所述Flash接口模块向所述Flash存储器发送读指令格式;待读操作结束后,所述状态机控制模块的状态由读Flash状态跳转为PCI空闲状态。
另一方面,本发明还提供一种PCI接口转Flash接口的控制方法,所述方法包括以下步骤:
A,PCI接口模块通过PCI接口获取PCI总线上的操作信息;
B,根据所述PCI总线上的操作信息,确定状态机控制模块的状态;
C,根据所述状态机控制模块的状态,Flash接口模块对Flash存储器进行访问。
进一步,在获取所述PCI总线上的操作信息之后,还包括:
判断所述PCI总线发起的操作是否是对所述Flash存储器进行访问,如果是,则转步骤B;如果否,则所述状态机控制模块的状态为PCI忙状态,所述PCI总线根据初始化时分配的PCI从设备地址,访问与所述操作信息对应的PCI从设备。
进一步,访问所述PCI从设备结束之后,所述状态机控制模块的状态由PCI忙状态跳转为PCI空闲状态。
进一步,当所述PCI总线上的操作信息为对所述Flash存储器的写操作时,所述状态机控制模块的状态为写Flash状态,所述Flash接口模块向所述Flash存储器发送写指令和写数据格式。
进一步,待写操作结束后,所述状态机控制模块的状态由写Flash状态跳转为PCI空闲状态。
进一步,当所述PCI总线上的操作信息为对所述Flash存储器的读操作时,所述状态机控制模块的状态为读Flash状态,所述Flash接口模块向所述Flash存储器发送读指令格式。
进一步,待读操作结束后,所述状态机控制模块的状态由读Flash状态跳转为PCI空闲状态。
本发明有益效果如下:
本发明通过使用状态机控制实现PCI接口到Flash接口的转化,使得PCI总线操作以及Flash存储器接口操作在主状态机中都有具体的对应状态,可以更好的保证PCI接口到Flash存储器接口访问的可靠性及传输的高效性。此外,本发明还提供了标准的PCI接口,使得本发明可以灵活移植,运用于其他设备中。并使用了单独的PCI接口模块,Flash接口模块,使得接口实现更为独立和清晰,防止其他信号参与和影响标准接口上各信号间的配合,有利于***的升级和维护。
附图说明
图1是本发明实施例中一种PCI接口转Flash接口的控制装置的结构示意图;
图2是本发明实施例中状态机控制模块状态机的实现示意图;
图3是本发明实施例中一种PCI接口转Flash接口的控制方法的流程图。
具体实施方式
为了解决现有技术PCI接口上挂接Flash实现方法空白以及作为BOOT存储器应用单一的问题,本发明提供了一种PCI接口转Flash接口的控制装置及方法,以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。
如图1所示,本发明实施例涉及一种PCI接口转Flash接口的控制装置,包括:
PCI接口模块101,通过PCI接口与PCI总线104连接,与PCI主设备进行数据通讯;
状态机控制模块102,与PCI接口模块101连接,用于根据PCI接口模块101获取的PCI总线104上的操作信息,确定状态机控制模块102的状态;
Flash接口模块103,与状态机控制模块102连接,且通过Flash接口与Flash存储器105连接,用于根据状态机控制模块102的状态,对Flash存储器105进行访问。
本实施例中,PCI接口模块101,包括了标准的PCI接口,与PCI主设备进行通信,是CPU访问Flash存储器105的数据和控制通道。PCI接口模块101对外直接与PCI总线104相连,对内与状态机控制模块102相连。在PCI总线104发起的对Flash存储器进行读、写或擦除操作时,PCI总线104侧看到的只有PCI总线104上的写操作和读操作。在PCI总线104进行写操作时,PCI接口模块101负责将CPU发起的写地址和写数据(操作信息)传递给状态机控制模块102,并且将写操作过程中的PCI总线104握手信息通过PCI总线104传递给CPU。在PCI总线104进行读操作时,PCI接口模块101负责将CPU发起的读地址传递给状态机控制模块102,并将从Flash接口端读回的数据通过PCI接口传递给CPU;PCI接口模块101还负责PCI总线104访问过程中的数据、地址校验计算,以及PCI总线104仲裁信息处理等。
状态机控制模块102,包括了在PCI总线104访问Flash存储器105时状态跳转情况,是本发明实施例的核心部分。状态机控制模块102分别与PCI接口模块101和Flash接口模块103相连。在PCI总线104初始化完成后,状态机控制模块102处于空闲状态,一旦PCI总线104发起总线操作,状态机即根据指令类型(操作信息)发生跳转,如果是对非Flash所分配的地址进行的操作,则根据指令内容跳转至PCI忙状态,当PCI总线操作完成后,状态机控制模块102跳转至PCI空闲状态;如果是对Flash存储器105所分配的地址进行的写操作,则根据指令内容跳转至Flash写操作状态,完成Flash写操作后,状态机控制模块102跳转至PCI空闲状态;如果是对Flash存储器105所分配的地址进行读操作,则根据指令内容跳转至Flash读操作状态,完成Flash读操作后,状态机控制模块102跳转至PCI空闲状态。
Flash接口模块103,包括了标准的Flash接口,连接Flash存储器105,与Flash存储器105进行通信;是对Flash存储器105进行读、写或擦除等一系列操作的控制和数据通道。Flash接口模块103对内与状态机控制模块102连接,对外与Flash存储器105相连。在对Flash存储器105进行写操作时,Flash接口模块103负责提供Flash接口标准的写指令、写数据格式,发送给Flash存储器105。在对Flash存储器105进行读操作时,Flash接口模块103负责提供Flash标准的读指令格式,发送给Flash存储器105,并正确接收由Flash存储器105返回的读数据;在对Flash存储器105进行擦除操作时,按照Flash接口协议规定的访问方式,对Flash对应地址进行操作。
如图2所示,本发明实施例状态机控制模块102的状态包括以下几个状态:
PCI空闲状态201:此状态为状态机控制模块102的默认状态。当以太网交换机设备开始工作,即进入PCI空闲状态201,而当PCI总线104上发起总线操作后,状态机控制模块102将从PCI空闲状态201跳转至PCI忙状态202或Flash访问状态203;当PCI总线访问结束后,状态机控制模块102则从PCI忙状态202跳转至PCI空闲状态201。当对Flash进行的是写操作,状态机控制模块102则从Flash访问状态203自动跳转至写Flash状态204,当Flash写操作完成后,状态机控制模块102则从写Flash状态204跳转至PCI空闲状态201。当对Flash进行的是读操作,状态机控制模块102则从Flash访问状态203自动跳转至读Flash状态205,当Flash读操作完成后,状态机控制模块102则从读Flash状态205跳转至PCI空闲状态201。当PCI总线上无操作,状态机控制模块102则维持PCI空闲状态201。
PCI忙状态202:当PCI总线上发起非Flash分配的地址读或写操作的时候,状态机控制模块102即进入PCI忙状态202。状态机控制模块102从PCI空闲状态201跳转至PCI忙状态202的条件包括但不限于以下几种操作:(1)对非Flash分配地址空间的读操作;(2)对非Flash分配地址空间的写操作;(3)对PCI总线设备的设备号询问操作等。当以上操作完成,PCI总线被释放后,状态机控制模块102即从PCI忙状态202跳转至PCI空闲状态201。
Flash访问状态203:当PCI总线空闲状态201时收到PCI总线上访问Flash地址的读操作或者写操作时,状态机控制模块102即从PCI总线空闲状态201跳转至Flash访问状态203;Flash访问状态203根据PCI总线上的操作属性,如果是Flash写操作则自动跳转至写Flash状态204,如果是Flash读操作则自动跳转至读Flash状态205。
写Flash状态204:此状态由Flash访问状态203根据PCI总线上发起的是Flash存储器的写操作自动跳转而来,当对Flash存储器的写操作完成后,写Flash状态204将跳转至PCI空闲状态201。
读Flash状态205:此状态由Flash访问状态203根据PCI总线上发起的是Flash存储器的读操作自动跳转而来,当对Flash存储器的读操作完成后,读Flash状态205将跳转至PCI空闲状态201。
本发明实施例的控制装置可通过但不限于可编程逻辑器件,或ASIC(Application Specific Integrated Circuit,专用集成电路)芯片等载体实现。
另外,本发明实施例还涉及一种由上述装置实现的PCI接口转Flash接口的控制方法,包括以下步骤:
A,PCI接口模块通过PCI接口获取PCI总线上的操作信息;
B,根据所述PCI总线上的操作信息,确定状态机控制模块的状态;
C,根据所述状态机控制模块的状态,Flash接口模块对Flash存储器进行访问。
下面以一具体实施例对上述方法进行详细说明,如图3所示,本发明实施例PCI接口转Flash的控制方法包括以下几个步骤:
步骤301:设备开始工作。此步骤包含但不限于以太网交换机设备的上电启动,掉电重启,CPU发起软件复位,设备上硬件按钮复位等几种情况。
步骤302:PCI初始化,在初始化过程中,板上CPU获得各PCI从设备的设备号及各PCI设备分配的地址。此步骤中涉及状态机控制模块102状态机从PCI空闲状态201到PCI忙状态202间的跳转;PCI总线初始化完成,PCI总线空闲;
步骤303:PCI总线空闲。此步骤对应于PCI接口转Flash接口主状态机102的PCI空闲状态201。当PCI总线初始化完成后,CPU并未发起PCI总线上的操作时,或者是PCI总线上访问Flash存储器的地址空间及非Flash存储器的地址空间完成后,将进入此步骤;当以太网交换机设备掉电时,将进入步骤307,设备工作结束。
步骤304:PCI上新的总线操作到来,判断PCI总线上是否访问Flash对应的地址空间;此步骤对应于状态机控制模块102的Flash访问状态203。如果判定不是访问Flash存储器对应的地址空间,则进入步骤305,PCI总线访问其他设备;如果判定是访问Flash存储器对应的地址空间,则进入步骤306,根据操作属性,对Flash进行读、写或擦除操作。
步骤305:PCI总线访问其他设备,PCI总线根据初始化时分配的PCI从设备地址,访问对应的PCI从设备。此操作包括了PCI总线初始化过程中的询问PCI从设备ID号,分配PCI从设备地址空间,或PCI总线访问非Flash分配的地址空间等一系列操作。此步骤对应于状态机控制模块102的PCI忙状态202。此步骤完成后,将跳转至步骤303,PCI总线空闲,等待新的PCI总线操作到来。
步骤306:根据操作属性,对Flash进行读、写或擦除操作。此步骤包含了对Flash存储器的读操作,写操作或擦除操作。此步骤对应于状态机控制模块102的写Flash状态204和读Flash状态205。此步骤完成后,将跳转至步骤303,PCI总线空闲,等待新的PCI总线操作到来。
步骤307:设备工作结束。当以太网交换机设备掉电后,将进入此步骤。
本发明实施例实现了PCI接口到Flash接口的转化,可以应用于以太网交换机设备中,以Flash作为存储设备,用以存储以太网交换机的版本内容,业务上的配置文件,死机文件及BOOT升级时的临时文件等。本发明实施例不仅选用了高速的数据传输接口PCI接口,而且将Flash空间地址根据需求分段使用,大大提高了FLASH的利用空间。
本发明通过使用状态机控制实现PCI接口到Flash接口的转化,使得PCI总线操作,Flash存储器接口操作在主状态机中都有具体的对应状态,可以更好的保证PCI接口到Flash存储器接口访问的可靠性及传输的高效性。此外,本发明还提供了标准的PCI接口,使得本发明可以灵活移植,运用于其他设备中。并使用了单独的PCI接口模块,Flash接口模块,使得接口实现更为独立和清晰,防止其他信号参与和影响标准接口上各信号间的配合,有利于***的升级和维护。
尽管为示例目的,已经公开了本发明的优选实施例,本领域的技术人员将意识到各种改进、增加和取代也是可能的,因此,本发明的范围应当不限于上述实施例。

Claims (10)

1.一种PCI接口转Flash接口的控制装置,其特征在于,所述装置包括:
PCI接口模块,通过PCI接口与PCI总线连接,与PCI主设备进行数据通讯;
状态机控制模块,与所述PCI接口模块连接,用于根据所述PCI接口模块获取的所述PCI总线上的操作信息,确定状态机控制模块的状态;
Flash接口模块,与所述状态机控制模块连接,且通过Flash接口与Flash存储器连接,用于根据所述状态机控制模块的状态,对所述Flash存储器进行访问。
2.如权利要求1所述的PCI接口转Flash接口的控制装置,其特征在于,当所述PCI总线上的操作信息为对所述Flash存储器的写操作时,所述状态机控制模块的状态为写Flash状态,所述Flash接口模块向所述Flash存储器发送写指令和写数据格式;待写操作结束后,所述状态机控制模块的状态由写Flash状态跳转为PCI空闲状态。
3.如权利要求1所述的PCI接口转Flash接口的控制装置,其特征在于,当所述PCI总线上的操作信息为对所述Flash存储器的读操作时,所述状态机控制模块的状态为读Flash状态,所述Flash接口模块向所述Flash存储器发送读指令格式;待读操作结束后,所述状态机控制模块的状态由读Flash状态跳转为PCI空闲状态。
4.一种PCI接口转Flash接口的控制方法,其特征在于,所述方法包括以下步骤:
A,PCI接口模块通过PCI接口获取PCI总线上的操作信息;
B,根据所述PCI总线上的操作信息,确定状态机控制模块的状态;
C,根据所述状态机控制模块的状态,Flash接口模块对Flash存储器进行访问。
5.如权利要求4所述的PCI接口转Flash接口的控制方法,其特征在于,在获取所述PCI总线上的操作信息之后,还包括:
判断所述PCI总线发起的操作是否是对所述Flash存储器进行访问,如果是,则转步骤B;如果否,则所述状态机控制模块的状态为PCI忙状态,所述PCI总线根据初始化时分配的PCI从设备地址,访问与所述操作信息对应的PCI从设备。
6.如权利要求5所述的PCI接口转Flash接口的控制方法,其特征在于,访问所述PCI从设备结束之后,所述状态机控制模块的状态由PCI忙状态跳转为PCI空闲状态。
7.如权利要求4所述的PCI接口转Flash接口的控制方法,其特征在于,当所述PCI总线上的操作信息为对所述Flash存储器的写操作时,所述状态机控制模块的状态为写Flash状态,所述Flash接口模块向所述Flash存储器发送写指令和写数据格式。
8.如权利要求7所述的PCI接口转Flash接口的控制方法,其特征在于,待写操作结束后,所述状态机控制模块的状态由写Flash状态跳转为PCI空闲状态。
9.如权利要求4所述的PCI接口转Flash接口的控制方法,其特征在于,当所述PCI总线上的操作信息为对所述Flash存储器的读操作时,所述状态机控制模块的状态为读Flash状态,所述Flash接口模块向所述Flash存储器发送读指令格式。
10.如权利要求9所述的PCI接口转Flash接口的控制方法,其特征在于,待读操作结束后,所述状态机控制模块的状态由读Flash状态跳转为PCI空闲状态。
CN2011102085176A 2011-07-25 2011-07-25 一种PCI接口转Flash接口的控制装置及方法 Pending CN102279828A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011102085176A CN102279828A (zh) 2011-07-25 2011-07-25 一种PCI接口转Flash接口的控制装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011102085176A CN102279828A (zh) 2011-07-25 2011-07-25 一种PCI接口转Flash接口的控制装置及方法

Publications (1)

Publication Number Publication Date
CN102279828A true CN102279828A (zh) 2011-12-14

Family

ID=45105286

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011102085176A Pending CN102279828A (zh) 2011-07-25 2011-07-25 一种PCI接口转Flash接口的控制装置及方法

Country Status (1)

Country Link
CN (1) CN102279828A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103729165A (zh) * 2014-01-16 2014-04-16 哈尔滨工业大学 应用于高速运动控制***的pci从设备核心控制模块
CN108897583A (zh) * 2018-06-27 2018-11-27 北京东土军悦科技有限公司 交换机启动方法、交换机和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070179631A1 (en) * 2006-01-27 2007-08-02 Valeo Systems Thermiques S.A.S. System and method of communication by serial communication bus
CN100568210C (zh) * 2007-07-13 2009-12-09 上海大学 一种用于图像处理器的pci适配器
CN201583944U (zh) * 2009-12-24 2010-09-15 北京航天长征飞行器研究所 一种采用fpga实现基于pci总线的实时采集卡
CN101169673B (zh) * 2007-10-15 2011-05-11 中兴通讯股份有限公司 实时时钟芯片接口电路的控制方法及实时时钟控制电路

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070179631A1 (en) * 2006-01-27 2007-08-02 Valeo Systems Thermiques S.A.S. System and method of communication by serial communication bus
CN100568210C (zh) * 2007-07-13 2009-12-09 上海大学 一种用于图像处理器的pci适配器
CN101169673B (zh) * 2007-10-15 2011-05-11 中兴通讯股份有限公司 实时时钟芯片接口电路的控制方法及实时时钟控制电路
CN201583944U (zh) * 2009-12-24 2010-09-15 北京航天长征飞行器研究所 一种采用fpga实现基于pci总线的实时采集卡

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103729165A (zh) * 2014-01-16 2014-04-16 哈尔滨工业大学 应用于高速运动控制***的pci从设备核心控制模块
CN108897583A (zh) * 2018-06-27 2018-11-27 北京东土军悦科技有限公司 交换机启动方法、交换机和存储介质

Similar Documents

Publication Publication Date Title
CN101133404B (zh) 用于与存储器装置通信的***和方法
CN102110072B (zh) 一种多处理器完全互访的方法及***
CN101136000B (zh) 实现sd主机/从属设备的应用处理器电路和电子设备
JP4799417B2 (ja) ホストコントローラ
MX2012005934A (es) Disco de estado solido (ssd) multi-interfaz, metodo de procesamiento y sistema del mismo.
CN101866328A (zh) 一种自动访问的串行总线读写控制方法
CN104021102A (zh) 基于状态机和片内总线的cpci串口板及其工作方法
CN104570846A (zh) Fpga重配置控制器及其控制方法
CN101140556A (zh) 用可编程器件实现访问多个i2c从器件的方法及装置
CN110968352B (zh) 一种pcie设备的复位***及服务器***
CN105404538A (zh) 一种fpga的加载和升级目标代码的装置及方法
CN103218337A (zh) 基于wishbone总线实现主与主、从与从通信的片上***和方法
US20100023669A1 (en) Host controller disposed in multi-function card reader
DE102020101958A1 (de) Dynamisches spurzugriffswechseln zwischen pcie-wurzelräumen
JP2007280347A (ja) メモリカード及びメモリカード制御切替方法
CN101436171A (zh) 模块化通信控制***
CN101281454A (zh) 一种绑定计算资源和存储资源的装置
JPH11126182A (ja) コンピュータバス間通信装置及びその方法
CN106874228A (zh) 基于i2c总线的控制器及通信方法、多控制器间的通信方法
CN116185499B (zh) 寄存器数据传输方法、寄存器缓存模块、智能设备和介质
CN101369257B (zh) 一种启动数据处理模块的方法、装置及***
CN102279828A (zh) 一种PCI接口转Flash接口的控制装置及方法
CN219574799U (zh) 一种基于amba总线的多总线桥接器及其片上***
CN101251831B (zh) 支持主从设备互换的移动存储器和主从设备互换方法
US20190286606A1 (en) Network-on-chip and computer system including the same

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20111214

RJ01 Rejection of invention patent application after publication