CN100386748C - 一种在单板中对外围器件进行片选的方法和系统 - Google Patents

一种在单板中对外围器件进行片选的方法和系统 Download PDF

Info

Publication number
CN100386748C
CN100386748C CNB2006100720489A CN200610072048A CN100386748C CN 100386748 C CN100386748 C CN 100386748C CN B2006100720489 A CNB2006100720489 A CN B2006100720489A CN 200610072048 A CN200610072048 A CN 200610072048A CN 100386748 C CN100386748 C CN 100386748C
Authority
CN
China
Prior art keywords
peripheral components
label
pld
programmable logic
logic device
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
Application number
CNB2006100720489A
Other languages
English (en)
Other versions
CN1821982A (zh
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.)
New H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies 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 Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CNB2006100720489A priority Critical patent/CN100386748C/zh
Publication of CN1821982A publication Critical patent/CN1821982A/zh
Application granted granted Critical
Publication of CN100386748C publication Critical patent/CN100386748C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种在单板中对外围器件进行片选的方法和系统。为不同的外围器件分配共同的地址空间;中央处理器(CPU)将可标识当前需片选的外围器件的信息输出至可编程逻辑器件;可编程逻辑器件根据接收到的可标识当前需片选的外围器件的信息,产生对应于当前需片选外围器件的片选信号,并将所产生的片选信号输出至各个外围器件;当前需片选的外围器件根据接收到的片选信号确定自身为片选对象。本发明为不同的外围器件分配共同的地址空间,这样,即使外围器件的数量再多,每一个外围器件均可以分配到地址空间,因此,从根本上解决了CPU地址空间不足的问题。

Description

一种在单板中对外围器件进行片选的方法和系统
技术领域
本发明涉及单板技术,特别是涉及一种在单板中对需通过可编程逻辑器件访问的外围器件进行片选的方法和系统。
背景技术
目前,在一个单板中,如印刷电路板(PCB),中央处理器(CPU)通常利用可编程逻辑器件来对单板中需通过可编程逻辑器件访问的外围器件,比如各控制器件和各存储器件等功能芯片,进行片选。
图1是在现有技术中实现对外围器件进行片选的示意图。图2是在现有技术中实现对外围器件进行片选的流程图。参见图1和图2,在现有技术中,在一个单板中,CPU对外围器件进行片选的过程包括以下步骤:
步骤201:预先为不同的外围器件分配不同的地址空间。
步骤202:当需要片选一个外围器件时,CPU通过本地总线(Local Bus)中的地址线将需片选的地址信息输出至可编程逻辑器件中的逻辑处理单元。
步骤203:可编程逻辑器件中的逻辑处理单元根据接收到的地址信息确定当前需片选的外围器件。
步骤204:可编程逻辑器件中的逻辑处理单元产生对应于当前需片选外围器件的片选信号,并将所产生的片选信号输出至各个外围器件。
步骤205:在各个外围器件中,当前需片选的外围器件根据接收到的片选信号确定自身为当前的片选对象。
至此,则实现了片选外围器件的过程。此后,确定自身为当前片选对象的外围器件则可通过Local Bus中的地址线,接收CPU所需访问的地址信息,并根据所接收到的地址信息在自身的对应地址中执行相应的读数据或写数据操作。
由以上描述可以看出,为了实现对特定外围器件的片选,现有技术为不同的外围器件分配了不同的地址空间,而此种作法会极大地消耗CPU的地址空间,往往会导致CPU中的地址空间不足。由于为许多外围器件,比如介质访问控制(MAC)芯片,分配的地址空间中包括有为该外围器件预留的地址空间,而该预留的地址空间为空闲的地址空间通常不被使用,因此,当CPU中地址空间不足时,现有技术的解决方法为:对各个外围器件所占用的地址空间进行压缩,也就是说,根据各个外围器件实际应占用的地址空间重新为各个外围器件分配地址空间,释放出每个外围器件占用的空闲地址空间,从而增加CPU中可用的地址空间。
但是,现有技术压缩地址空间的作法也仅仅是释放出每个外围器件占用的空闲地址空间,因此,所释放出的地址空间的大小非常有限,无法从根本上解决CPU地址空间不足的问题。另外,由于在压缩地址空间后,外围器件对应的地址空间发生了变化,因此,必须相应地修改底层驱动代码,重新进行外围器件与地址空间的映射,从而增加了软件实现的复杂度。
发明内容
有鉴于此,本发明的主要目的在于提供一种在单板中对外围器件进行片选的方法和系统,本发明的另一目的在于提供一种可编程逻辑器件,以便从根本上解决CPU中地址空间不足的问题。
为了达到上述目的,本发明的技术方案是这样实现的:
一种在单板中对外围器件进行片选的方法,为不同的外围器件分配共同的地址空间,该方法还包括:
A、CPU将可标识当前需片选的外围器件的信息输出至可编程逻辑器件;
B、可编程逻辑器件根据接收到的可标识当前需片选的外围器件的信息,产生对应于当前需片选外围器件的片选信号,并将所产生的片选信号输出至各个外围器件;
C、当前需片选的外围器件根据接收到的片选信号确定自身为片选对象。
该方法进一步包括:为不同的外围器件设置不同的标号,建立每一个外围器件与为其分配的标号之间的第一对应关系;
所述步骤A包括:CPU根据所建立的第一对应关系,查找到与当前需片选的外围器件对应的标号,将所查找到的标号作为可标识当前需片选的外围器件的信息输出至可编程逻辑器件;
在步骤B中,所述可编程逻辑器件产生片选信号的步骤包括:可编程逻辑器件根据所建立的第一对应关系,查找到与所接收到的标号对应的外围器件,产生对应于所查找到外围器件的片选信号。
该方法进一步包括:在可编程逻辑器件中设置标号寄存器;
在步骤A中,所述将所查找到的标号输出至可编程逻辑器件的步骤包括:CPU将所查找到的标号作为可标识当前需片选的外围器件的信息输出至可编程逻辑器件中的标号寄存器,由该标号寄存器进行保存;
在步骤B中,所述可编程逻辑器件产生片选信号的步骤包括:可编程逻辑器件中的逻辑处理单元从标号寄存器中读取标号,根据所建立的第一对应关系,查找到与所读取的标号对应的外围器件,产生对应于所查找到外围器件的片选信号。
在步骤A中,所述CPU将所查找到的标号输出给标号寄存器的步骤包括:CPU通过本地总线Local Bus中的数据线,将所查找到的标号作为可标识当前需片选的外围器件的信息输出至可编程逻辑器件中的标号寄存器。
该方法进一步包括:将CPU上的通用输入输出IO口与可编程逻辑器件中的逻辑处理单元相连,并建立CPU上通用IO口输出的不同信号与各个外围器件之间的第二对应关系;
所述步骤A包括:CPU根据所建立的第二对应关系查找到与当前需片选的外围器件对应的通用IO口输出的信号,通过自身的通用IO口,将所查找到的信号作为可标识当前需片选的外围器件的信息输出至可编程逻辑器件中的逻辑处理单元;
在步骤B中,所述可编程逻辑器件产生片选信号的步骤包括:可编程逻辑器件中的逻辑处理单元根据所建立的第二对应关系,查找到与所接收到的通用IO口输出的信号对应的外围器件,产生对应于所查找到外围器件的片选信号。
为不同的外围器件所分配的共同地址空间的大小等于或大于各个外围器件实际应占用的各地址空间中的最大值。
所述可编程逻辑器件为复杂可编程逻辑器件CPLD或现场可编程门阵列FPGA。
在步骤C之后进一步包括:当前需片选的外围器件通过Local Bus中的地址线,接收CPU所需访问的地址信息,并根据所接收到的地址信息在自身的对应地址中执行读数据或写数据操作。
该方法进一步包括:CPU对当前执行片选的进程进行软件加锁。
一种在印刷电路板(PCB)中对功能芯片进行片选的方法,应用于网络存储领域,为不同的功能芯片分配共同的地址空间,并为不同的功能芯片设置不同的标号,建立每一个功能芯片与为其分配的标号之间的第一对应关系,该方法还包括:
a1、CPU根据所建立的第一对应关系,查找到与当前需片选的功能芯片对应的标号,将所查找到的标号作为可标识当前需片选的功能芯片的信息输出至可编程逻辑器件;
b1、可编程逻辑器件根据所建立的第一对应关系,查找到与所接收到的标号对应的功能芯片,产生对应于所查找到功能芯片的片选信号,并将所产生的片选信号输出至各个功能芯片;
c1、当前需片选的功能芯片根据接收到的片选信号确定自身为片选对象。
一种在PCB中对功能芯片进行片选的方法,应用于网络存储领域,为不同的功能芯片分配共同的地址空间,并将CPU上的通用IO口与可编程逻辑器件中的逻辑处理单元相连,建立CPU上通用IO口输出的不同信号与各个功能芯片之间的第二对应关系;
a2、CPU根据所建立的第二对应关系查找到与当前需片选的功能芯片对应的通用IO口输出的信号,通过自身的通用IO口,将所查找到的信号作为可标识当前需片选的功能芯片的信息输出至可编程逻辑器件中的逻辑处理单元;
b2、可编程逻辑器件中的逻辑处理单元根据所建立的第二对应关系,查找到与所接收到的通用IO口输出的信号对应的功能芯片,产生对应于所查找到功能芯片的片选信号,并将所产生的片选信号输出至各个功能芯片;
c2、当前需片选的功能芯片根据接收到的片选信号确定自身为片选对象。
一种在单板中对外围器件进行片选的系统,该系统包括:CPU、可编程逻辑器件和多个外围器件,其中,多个外围器件占用共同的地址空间,并且,
CPU,用于将可标识当前需片选的外围器件的信息输出至可编程逻辑器件;
可编程逻辑器件,用于根据接收到的可标识当前需片选的外围器件的信息,产生对应于当前需片选外围器件的片选信号,并将所产生的片选信号输出至各个外围器件;
各个外围器件中,当前需片选的外围器件根据接收到的片选信号确定自身为片选对象,其它外围器件根据接收到的片选信号确定自身并非当前的片选对象。
所述可编程逻辑器件内部包括逻辑处理单元和标号寄存器,并且,
CPU,用于根据自身中保存的外围器件与标号的对应关系,查找到与当前需片选的外围器件对应的标号,将所查找到的标号输出至可编程逻辑器件中的标号寄存器;
标号寄存器,用于保存所接收到的标号;
逻辑处理单元,用于从标号寄存器中读取标号,并在自身所保存的外围器件与标号的对应关系中,查找到与所读取的标号对应的外围器件,产生对应于所查找到外围器件的片选信号,并将所产生的片选信号输出至各个外围器件。
所述CPU用于通过Local Bus中的数据线将所查找到的标号输出至可编程逻辑器件中的标号寄存器。
所述可编程逻辑器件内部包括逻辑处理单元,且CPU上的通用IO口与可编程逻辑器件中的逻辑处理单元相连,其中,
CPU,用于在自身所保存的外围器件与通用IO口输出信号的对应关系中,查找到与当前需片选的外围器件对应的信号,并通过自身的通用IO口将所查找到的信号输出至可编程逻辑器件中的逻辑处理单元;
逻辑处理单元,用于在自身所保存的外围器件与通用IO口输出信号的对应关系中,查找到与所接收到的信号对应的外围器件,产生对应于所查找到外围器件的片选信号,并将所产生的片选信号输出至各个外围器件。
一种可编程逻辑器件,该可编程逻辑器件内部包括逻辑处理单元和标号寄存器,并且,
标号寄存器,用于接收CPU所输出的标号,并保存该标号;
逻辑处理单元,用于从标号寄存器中读取标号,并在自身所保存的外围器件与标号的对应关系中,查找到与所读取的标号对应的外围器件,产生对应于所查找到外围器件的片选信号,并将所产生的片选信号输出至外部的各个外围器件。
一种可编程逻辑器件,该可编程逻辑器件内部包括逻辑处理单元,且该逻辑处理单元通过CPU上的通用IO口与CPU相连,并且,
逻辑处理单元,用于接收CPU通过通用IO口所输出的信号,在自身所保存的外围器件与通用IO口输出信号的对应关系中,查找到与所接收到的信号相对应的外围器件,产生对应于所查找到外围器件的片选信号,并将所产生的片选信号输出至外部的各个外围器件。
由此可见,本发明具有以下优点:
1、本发明为不同的外围器件分配共同的地址空间,即使外围器件的数量再多,每一个外围器件均可以分配到地址空间,因此,从根本上解决了CPU中地址空间不足的问题。
2、在本发明中,外围器件对应的地址空间是固定的无需进行修改,因此,无需进行现有技术中复杂的修改底层驱动代码,重新进行外围器件与地址空间映射的软件实现过程,降低了软件实现的复杂度。
3、在现有技术中,由于在压缩地址空间后,外围器件对应的地址空间发生了变化,因此,必须相应地修改外围器件硬件地址线的连接,从而增加了硬件实现的复杂度。而在本发明中,当使用不同的标号来标识出不同的外围器件实现片选时,在解决地址空间不足问题的同时,CPU与可编程逻辑器件以及各个外围器件之间的硬件地址线连接无需进行任何的修改,因此,大大简化了硬件实现的复杂度。
附图说明
图1是在现有技术中实现对外围器件进行片选的示意图。
图2是在现有技术中实现对外围器件进行片选的流程图。
图3A是本发明系统的一种具体结构示意图。
图3B是本发明系统的另一种具体结构示意图。
图4是本发明实施例1的流程图。
图5是本发明实施例2的流程图。
具体实施方式
在现有技术中,由于是为不同的外围器件分配不同的地址空间,因此,即使采用压缩地址空间的作法,也无法从根本上解决地址空间不足的问题。而如果不同的外围器件能够分配共同的地址空间,那么,即使外围器件的数量再多,也不会出现地址空间不足的问题。针对这一特点,本发明提出了一种在单板中对外围器件进行片选的方法,其核心思想是:为不同的外围器件分配共同的地址空间;CPU将可标识当前需片选的外围器件的信息输出至可编程逻辑器件;可编程逻辑器件根据接收到的可标识当前需片选的外围器件的信息,产生对应于当前需片选外围器件的片选信号,并将所产生的片选信号输出至各个外围器件;各个外围器件中,当前需片选的外围器件根据接收到的片选信号确定自身为片选对象。
为了区分出占用共同地址空间的不同外围器件,本发明可以预先为不同的外围器件设置不同的标号,即使用不同的标号来标识出不同的外围器件。这样,上述可标识当前需片选的外围器件的信息则为当前需片选的外围器件的标号。
或者,本发明也可以预先为不同的外围器件分配不同的CPU上的通用输入输出(IO)口输出信号,即使用不同的通用IO口输出信号来标识出不同的外围器件。这样,上述可标识当前需片选的外围器件的信息则为通用IO口所输出的、对应于当前需片选的外围器件的信号。
本发明还提出了一种在单板中对外围器件进行片选的系统。本发明系统包括:CPU、可编程逻辑器件和多个外围器件,其中,多个外围器件占用共同的地址空间,并且,
CPU,用于将可标识当前需片选的外围器件的信息输出至可编程逻辑器件;
可编程逻辑器件,用于根据接收到的可标识当前需片选的外围器件的信息,产生对应于当前需片选外围器件的片选信号,并将所产生的片选信号输出至各个外围器件;
各个外围器件中,当前需片选的外围器件根据接收到的片选信号确定自身为片选对象,其它外围器件根据接收到的片选信号确定自身并非当前的片选对象。
图3A是本发明系统的一种具体结构示意图。参见图3A,在本发明系统中,可编程逻辑器件内部可以包括逻辑处理单元和标号寄存器,并且,
CPU,用于根据自身中保存的外围器件与标号的对应关系,查找到与当前需片选的外围器件对应的标号,将所查找到的标号信息输出至可编程逻辑器件中的标号寄存器;
标号寄存器,用于保存所接收到的标号信息;
逻辑处理单元,用于从标号寄存器中读取标号信息,并在自身中保存的外围器件与标号的对应关系中,查找到与所读取的标号信息对应的当前需片选的外围器件,产生对应于当前需片选外围器件的片选信号,并将所产生的片选信号输出至各个外围器件。
图3B是本发明系统的另一种具体结构示意图。参见图3B,在本发明系统中,可编程逻辑器件内部可以只包括逻辑处理单元,并且,CPU上的通用IO口与可编程逻辑器件中的逻辑处理单元相连,并且,
CPU,用于在自身中保存的外围器件与通用IO口输出信号的对应关系中,查找到与当前需片选的外围器件对应的信号,并通过自身的通用IO口将所查找到的信号输出至可编程逻辑器件中的逻辑处理单元;
逻辑处理单元,用于在自身中保存的外围器件与通用IO口输出信号的对应关系中,查找到与所接收到的信号对应的当前需片选的外围器件,产生对应于当前需片选外围器件的片选信号,并将所产生的片选信号输出至各个外围器件。
为使本发明的目的、技术方案和优点更加清楚,下面结合附图及具体实施例对本发明作进一步地详细描述。
下面针对使用不同的标号来标识出不同的外围器件、以及使用不同的通用IO口输出信号来标识出不同的外围器件两种方式,分别举一个具体实施例来详细说明本发明的实现过程。
实施例1:
图4是本发明实施例1的流程图。参见图3A和图4,利用本发明的系统,针对使用不同的标号来标识出不同外围器件的方式,本实施例1实现在单板中对外围器件进行片选的过程包括以下步骤:
步骤401:预先为不同的外围器件分配共同的地址空间。
这里,为了确保能够对任意一个外围器件进行片选,所分配的地址空间的大小等于或大于各个外围器件实际应占用的各地址空间中的最大值。比如,存在3个外围器件,外围器件1为MAC芯片,实际应占有256字节的地址空间,外围器件2为电擦除只读存储器(EEPROM),实际应占有128字节的地址空间,外围器件3为I2C控制器,实际应占有64字节的地址空间,那么,在本步骤中,为该3个外围器件分配共同的地址空间,并且,所分配的地址空间的大小为256字节或大于256字节。
步骤402:预先为不同的外围器件设置不同的标号,建立每一个外围器件与为其分配的标号之间的第一对应关系,并将所建立的第一对应关系分别保存在CPU和可编程逻辑器件内的逻辑处理单元中。
步骤403:预先在可编程逻辑器件中设置标号寄存器。
步骤404:当需要片选一个外围器件时,CPU从所建立的第一对应关系中查找到与需片选外围器件对应的标号。
步骤405:CPU通过Local Bus中的数据线将所查找到的标号信息输出至可编程逻辑器件中的标号寄存器,该标号寄存器保存所接收到的标号信息。
步骤406:在可编程逻辑器件中,逻辑处理单元读取标号寄存器中保存的标号信息。
步骤407:可编程逻辑器件中的逻辑处理单元在所建立的第一对应关系中查找到与所读取的标号信息对应的外围器件,将所查找到的外围器件确定为当前需片选的外围器件。
步骤408:可编程逻辑器件中的逻辑处理单元产生对应于所查找到的外围器件的片选信号,并将所产生的片选信号输出至各个外围器件。
步骤409:在各个外围器件中,当前需片选的外围器件根据接收到的片选信号确定自身为当前的片选对象,其它外围器件根据接收到的片选信号确定自身并非当前的片选对象。
至此,则实现了片选外围器件的过程。此后,确定自身为当前片选对象的外围器件则可通过Local Bus中的地址线,接收CPU所需访问的地址信息,并根据所接收到的地址信息在自身的对应地址中执行相应的读数据或写数据操作。
实施例2:
图5是本发明实施例2的流程图。参见图3B和图5,利用本发明的系统,针对使用不同的通用IO口输出信号来标识出不同的外围器件的方式,本实施例2实现在单板中对外围器件进行片选的过程包括以下步骤:
步骤501的所有描述与步骤401的所有描述完全相同。
步骤502:预先将CPU上的通用IO口与可编程逻辑器件中的逻辑处理单元相连。
步骤503:预先建立CPU上通用IO口输出的不同信号与各个外围器件之间的第二对应关系,并将所建立的第二对应关系分别保存在CPU和可编程逻辑器件内的逻辑处理单元中。
这里,建立所述的第二对应关系是为了通过不同的信号标识不同的外围器件。比如,建立CPU上通用IO口输出的0001对应外围器件1,输出的0010对应外围器件2等。
步骤504:当需要片选一个外围器件时,CPU从所建立的第二对应关系中查找到与需片选外围器件对应的信号。
步骤505:CPU通过通用IO口将所查找到的信号输出至可编程逻辑器件中的逻辑处理单元。
步骤506:可编程逻辑器件中的逻辑处理单元在所建立的第二对应关系中,查找到与所接收到的信号对应的外围器件,将所查找到的外围器件确定为当前需片选的外围器件。
步骤507:可编程逻辑器件中的逻辑处理单元产生对应于当前需片选外围器件的片选信号,并将所产生的片选信号输出至各个外围器件。
步骤508:在各个外围器件中,当前需片选的外围器件根据接收到的片选信号确定自身为当前的片选对象,其它外围器件根据接收到的片选信号确定自身并非当前的片选对象。
至此,则实现了片选外围器件的过程。此后,确定自身为当前片选对象的外围器件则可通过Local Bus中的地址线,接收CPU所需访问的地址信息,并根据所接收到的地址信息在自身的对应地址中执行相应的读数据或写数据操作。
需要说明的是,在本发明中,由于各个外围器件占用共同的地址空间,因此,在同一时间,应只允许对一个外围器件进行片选,从而保证在同一时间只允许一个外围器件在各外围器件占用共同的地址空间中执行自身的读写操作。因此,在上述实施例1和实施例2中,当CPU需要片选一个外围器件时,CPU还可以进一步对当前执行片选的进程进行软件加锁,从而在操纵系统支持多进程时,防止其它的进程同时对其它的外围器件进行片选。其中,CPU对进程进行软件加锁的过程为现有技术,但可简单描述为:CPU在当前执行片选的进程中,将可标识是否已软件加锁的变量的值设置为已加锁状态。
在本发明中,所述的可编程逻辑器件可以是任意一个具有可编程能力,能够在内部通过编程实现寄存器逻辑功能的器件,比如,可以是复杂可编程逻辑器件(CPLD)或现场可编程门阵列(FPGA)等。
总之,以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (17)

1.一种在单板中对外围器件进行片选的方法,其特征在于,为不同的外围器件分配共同的地址空间,该方法还包括:
A、中央处理器CPU将可标识当前需片选的外围器件的信息输出至可编程逻辑器件;
B、可编程逻辑器件根据接收到的可标识当前需片选的外围器件的信息,产生对应于当前需片选外围器件的片选信号,并将所产生的片选信号输出至各个外围器件;
C、当前需片选的外围器件根据接收到的片选信号确定自身为片选对象。
2.根据权利要求1所述的方法,其特征在于,该方法进一步包括:为不同的外围器件设置不同的标号,建立每一个外围器件与为其分配的标号之间的第一对应关系;
所述步骤A包括:CPU根据所建立的第一对应关系,查找到与当前需片选的外围器件对应的标号,将所查找到的标号作为可标识当前需片选的外围器件的信息输出至可编程逻辑器件;
在步骤B中,所述可编程逻辑器件产生片选信号的步骤包括:可编程逻辑器件根据所建立的第一对应关系,查找到与所接收到的标号对应的外围器件,产生对应于所查找到外围器件的片选信号。
3.根据权利要求2所述的方法,其特征在于,该方法进一步包括:在可编程逻辑器件中设置标号寄存器;
在步骤A中,所述将所查找到的标号输出至可编程逻辑器件的步骤包括:CPU将所查找到的标号作为可标识当前需片选的外围器件的信息输出至可编程逻辑器件中的标号寄存器,由该标号寄存器进行保存;
在步骤B中,所述可编程逻辑器件产生片选信号的步骤包括:可编程逻辑器件中的逻辑处理单元从标号寄存器中读取标号,根据所建立的第一对应关系,查找到与所读取的标号对应的外围器件,产生对应于所查找到外围器件的片选信号。
4.根据权利要求3所述的方法,其特征在于,在步骤A中,所述CPU将所查找到的标号输出给标号寄存器的步骤包括:CPU通过本地总线Local Bus中的数据线,将所查找到的标号作为可标识当前需片选的外围器件的信息输出至可编程逻辑器件中的标号寄存器。
5.根据权利要求1所述的方法,其特征在于,该方法进一步包括:将CPU上的通用输入输出IO口与可编程逻辑器件中的逻辑处理单元相连,并建立CPU上通用IO口输出的不同信号与各个外围器件之间的第二对应关系;
所述步骤A包括:CPU根据所建立的第二对应关系查找到与当前需片选的外围器件对应的通用IO口输出的信号,通过自身的通用IO口,将所查找到的信号作为可标识当前需片选的外围器件的信息输出至可编程逻辑器件中的逻辑处理单元;
在步骤B中,所述可编程逻辑器件产生片选信号的步骤包括:可编程逻辑器件中的逻辑处理单元根据所建立的第二对应关系,查找到与所接收到的通用IO口输出的信号对应的外围器件,产生对应于所查找到外围器件的片选信号。
6.根据权利要求1至5中任意一项所述的方法,其特征在于,为不同的外围器件所分配的共同地址空间的大小等于或大于各个外围器件实际应占用的各地址空间中的最大值。
7.根据权利要求1至5中任意一项所述的方法,其特征在于,所述可编程逻辑器件为复杂可编程逻辑器件CPLD或现场可编程门阵列FPGA。
8.根据权利要求1至5中任意一项所述的方法,其特征在于,在步骤C之后进一步包括:当前需片选的外围器件通过Local Bus中的地址线,接收CPU所需访问的地址信息,并根据所接收到的地址信息在自身的对应地址中执行读数据或写数据操作。
9.根据权利要求1至5中任意一项所述的方法,其特征在于,该方法进一步包括:CPU对当前执行片选的进程进行软件加锁。
10.一种在印刷电路板PCB中对功能芯片进行片选的方法,应用于网络存储领域,其特征在于,为不同的功能芯片分配共同的地址空间,并为不同的功能芯片设置不同的标号,建立每一个功能芯片与为其分配的标号之间的第一对应关系,该方法还包括:
a1、CPU根据所建立的第一对应关系,查找到与当前需片选的功能芯片对应的标号,将所查找到的标号作为可标识当前需片选的功能芯片的信息输出至可编程逻辑器件;
b1、可编程逻辑器件根据所建立的第一对应关系,查找到与所接收到的标号对应的功能芯片,产生对应于所查找到功能芯片的片选信号,并将所产生的片选信号输出至各个功能芯片;
c1、当前需片选的功能芯片根据接收到的片选信号确定自身为片选对象。
11.一种在PCB中对功能芯片进行片选的方法,应用于网络存储领域,其特征在于,为不同的功能芯片分配共同的地址空间,并将CPU上的通用IO口与可编程逻辑器件中的逻辑处理单元相连,建立CPU上通用IO口输出的不同信号与各个功能芯片之间的第二对应关系;
a2、CPU根据所建立的第二对应关系查找到与当前需片选的功能芯片对应的通用IO口输出的信号,通过自身的通用IO口,将所查找到的信号作为可标识当前需片选的功能芯片的信息输出至可编程逻辑器件中的逻辑处理单元;
b2、可编程逻辑器件中的逻辑处理单元根据所建立的第二对应关系,查找到与所接收到的通用IO口输出的信号对应的功能芯片,产生对应于所查找到功能芯片的片选信号,并将所产生的片选信号输出至各个功能芯片;
c2、当前需片选的功能芯片根据接收到的片选信号确定自身为片选对象。
12.一种在单板中对外围器件进行片选的系统,其特征在于,该系统包括:CPU、可编程逻辑器件和多个外围器件,其中,多个外围器件占用共同的地址空间,并且,
CPU,用于将可标识当前需片选的外围器件的信息输出至可编程逻辑器件;
可编程逻辑器件,用于根据接收到的可标识当前需片选的外围器件的信息,产生对应于当前需片选外围器件的片选信号,并将所产生的片选信号输出至各个外围器件;
各个外围器件中,当前需片选的外围器件根据接收到的片选信号确定自身为片选对象,其它外围器件根据接收到的片选信号确定自身并非当前的片选对象。
13.根据权利要求12所述的系统,其特征在于,所述可编程逻辑器件内部包括逻辑处理单元和标号寄存器,并且,
CPU,用于根据自身中保存的外围器件与标号的对应关系,查找到与当前需片选的外围器件对应的标号,将所查找到的标号输出至可编程逻辑器件中的标号寄存器;
标号寄存器,用于保存所接收到的标号;
逻辑处理单元,用于从标号寄存器中读取标号,并在自身所保存的外围器件与标号的对应关系中,查找到与所读取的标号对应的外围器件,产生对应于所查找到外围器件的片选信号,并将所产生的片选信号输出至各个外围器件。
14.根据权利要求13所述的系统,其特征在于,所述CPU用于通过Local Bus中的数据线将所查找到的标号输出至可编程逻辑器件中的标号寄存器。
15.根据权利要求12所述的系统,其特征在于,所述可编程逻辑器件内部包括逻辑处理单元,且CPU上的通用IO口与可编程逻辑器件中的逻辑处理单元相连,其中,
CPU,用于在自身所保存的外围器件与通用IO口输出信号的对应关系中,查找到与当前需片选的外围器件对应的信号,并通过自身的通用IO口将所查找到的信号输出至可编程逻辑器件中的逻辑处理单元;
逻辑处理单元,用于在自身所保存的外围器件与通用IO口输出信号的对应关系中,查找到与所接收到的信号对应的外围器件,产生对应于所查找到外围器件的片选信号,并将所产生的片选信号输出至各个外围器件。
16.一种可编程逻辑器件,其特征在于,该可编程逻辑器件内部包括逻辑处理单元和标号寄存器,并且,
标号寄存器,用于接收CPU所输出的标号,并保存该标号;
逻辑处理单元,用于从标号寄存器中读取标号,并在自身所保存的外围器件与标号的对应关系中,查找到与所读取的标号对应的外围器件,产生对应于所查找到外围器件的片选信号,并将所产生的片选信号输出至外部的各个外围器件。
17.一种可编程逻辑器件,其特征在于,该可编程逻辑器件内部包括逻辑处理单元,且该逻辑处理单元通过CPU上的通用IO口与CPU相连,并且,
逻辑处理单元,用于接收CPU通过通用IO口所输出的信号,在自身所保存的外围器件与通用IO口输出信号的对应关系中,查找到与所接收到的信号相对应的外围器件,产生对应于所查找到外围器件的片选信号,并将所产生的片选信号输出至外部的各个外围器件。
CNB2006100720489A 2006-04-04 2006-04-04 一种在单板中对外围器件进行片选的方法和系统 Expired - Fee Related CN100386748C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2006100720489A CN100386748C (zh) 2006-04-04 2006-04-04 一种在单板中对外围器件进行片选的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2006100720489A CN100386748C (zh) 2006-04-04 2006-04-04 一种在单板中对外围器件进行片选的方法和系统

Publications (2)

Publication Number Publication Date
CN1821982A CN1821982A (zh) 2006-08-23
CN100386748C true CN100386748C (zh) 2008-05-07

Family

ID=36923352

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100720489A Expired - Fee Related CN100386748C (zh) 2006-04-04 2006-04-04 一种在单板中对外围器件进行片选的方法和系统

Country Status (1)

Country Link
CN (1) CN100386748C (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104881378A (zh) * 2015-05-15 2015-09-02 深圳市双翼科技有限公司 Local Bus和外围设备之间的数据总线和地址总线处理方法
CN106371345A (zh) * 2015-07-21 2017-02-01 钜泉光电科技(上海)股份有限公司 一种多芯片uart片选系统及方法
CN111078596A (zh) * 2019-11-28 2020-04-28 杭州华澜微电子股份有限公司 Flash芯片控制方法、设备、系统及可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5870410A (en) * 1996-04-29 1999-02-09 Altera Corporation Diagnostic interface system for programmable logic system development
CN1514377A (zh) * 2003-06-13 2004-07-21 Ut斯达康(中国)有限公司 对多个可编程逻辑器件进行在线加载的方法和装置
CN1540512A (zh) * 2003-10-31 2004-10-27 港湾网络有限公司 Cpu外部总线的保护方法与装置
CN1725205A (zh) * 2005-07-19 2006-01-25 杭州华为三康技术有限公司 控制器及多个可编程逻辑器件的组合访问装置及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5870410A (en) * 1996-04-29 1999-02-09 Altera Corporation Diagnostic interface system for programmable logic system development
CN1514377A (zh) * 2003-06-13 2004-07-21 Ut斯达康(中国)有限公司 对多个可编程逻辑器件进行在线加载的方法和装置
CN1540512A (zh) * 2003-10-31 2004-10-27 港湾网络有限公司 Cpu外部总线的保护方法与装置
CN1725205A (zh) * 2005-07-19 2006-01-25 杭州华为三康技术有限公司 控制器及多个可编程逻辑器件的组合访问装置及方法

Also Published As

Publication number Publication date
CN1821982A (zh) 2006-08-23

Similar Documents

Publication Publication Date Title
CN101853207B (zh) 存储装置
US6434660B1 (en) Emulating one tape protocol of flash memory to a different type protocol of flash memory
CN1208735C (zh) 与主机串行通信的多个可拆卸非易失性存储卡
US7890690B2 (en) System and method for dual-ported flash memory
CN106227683B (zh) 电子设备及信息处理方法
US6888733B2 (en) Multiple chip system including a plurality of non-volatile semiconductor memory devices
US20020145920A1 (en) Semiconductor memory device
US20040123059A1 (en) Memory card authentication system, memory card host device, memory card, storage area switching method, and storage area switching program
JPS62245461A (ja) ボ−ドスロツト番号の割当方法
CN100386748C (zh) 一种在单板中对外围器件进行片选的方法和系统
CN101465754A (zh) 加载复位配置字的方法、设备及通信单板
US7370810B2 (en) Semiconductor device and memory card having the same
CN102985916A (zh) 微控制器及其控制方法
US6813647B2 (en) Microcomputer system reading data from secondary storage medium when receiving upper address from outside and writing data to primary storage medium
US20020083291A1 (en) Nonvolatile semiconductor memory
JP2001319483A (ja) 拡充可能なメモリ集積回路装置
JP2007310760A (ja) 記憶装置
CN100487673C (zh) 次级内存装置及使用次级内存的方法
JP2001067215A (ja) 情報処理システム及びファームウェア書換え方法
US6789138B1 (en) Computer peripheral apparatus and a computer readable medium having a program for controlling the computer peripheral apparatus
CN101149972A (zh) 一种有多个可独立操作存储空间的flash存储器芯片
US20110167210A1 (en) Semiconductor device and system comprising memories accessible through dram interface and shared memory region
JP2008103996A (ja) 半導体集積回路装置
JPH11328980A (ja) 不揮発性半導体メモリ
JP2000020454A (ja) 半導体集積回路

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
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: NEW H3C TECHNOLOGIES Co.,Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: HANGZHOU H3C TECHNOLOGIES Co.,Ltd.

CP03 Change of name, title or address
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080507

CF01 Termination of patent right due to non-payment of annual fee