CN102591819A - 一种利用总线开关控制多处理器实现高速并行加载的方法 - Google Patents
一种利用总线开关控制多处理器实现高速并行加载的方法 Download PDFInfo
- Publication number
- CN102591819A CN102591819A CN2011104364855A CN201110436485A CN102591819A CN 102591819 A CN102591819 A CN 102591819A CN 2011104364855 A CN2011104364855 A CN 2011104364855A CN 201110436485 A CN201110436485 A CN 201110436485A CN 102591819 A CN102591819 A CN 102591819A
- Authority
- CN
- China
- Prior art keywords
- processor
- pin
- bus switch
- control
- output
- 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
Images
Landscapes
- Multi Processors (AREA)
Abstract
一种利用总线开关控制多处理器实现高速并行加载的方法,包括:利用对总线开关输出使能端OE的控制来隔离所有互联的处理器数据总线;选用上电复位及程序加载期间其IO管脚输出为高电平的处理器,把该处理器的某个IO管脚接到该总线开关的使能端OE上,该IO管脚定义为OE_EN;若所用的处理器上电复位及程序加载期间其IO管脚输出为低电平,则应采用反相器取反后再接到OE上;编写处理器程序代码,在每个处理器程序加载开始后延时等待时间Tw,使IO管脚OE_EN输出低电平,并一直保持。本发明使程序加载速度快,实现了多个程序的并行加载,特别适合于实时性要求高、上电后需要迅速做出响应的场合,且简单、易于排故、很高的可靠性。
Description
技术领域
本发明涉及一种针对多个处理器高速并行加载程序的方法,具体涉及一种利用总线开关控制多处理器实现高速并行加载的方法。这里的处理器泛指所有上电后需要加载程序的器件,比如目前通用的大规模可编程逻辑器件FPGA就包括在内。
背景技术
近年来,随着嵌入式技术的发展,嵌入式系统以其低功耗、高性能、实时性好等特点在工业控制、医疗、航天、航空等领域得到越来越广泛的应用。但是,随着这些领域的技术要求越来越高,原来的单处理器系统已难以满足,于是应运而生了多处理器的分布式嵌入式系统。系统中不仅仅有处理器,还有大规模可编程逻辑器件(下文提及的处理器也包括大规模可编程逻辑器件)。其优点是把一个或多个任务进行拆分由多个不同处理器并行完成,对每一个处理器的要求都不是很高,各处理器之间协同工作,提升了处理能力,丰富了接口,大大提高了系统工作效率。更为重要的是,相对于以前采用单一处理器来讲,降低了系统工作频率,减少了发热量和功耗,还有利于电磁兼容性,提高了可靠性。在设计安排方面,由于把多个任务分解给不同的处理器,该任务就可以由不同的人来并行完成,只需相互之间制定好通信接口即可,这样就降低了应用程序的开发难度,缩短了开发周期,降低了开发成本。
目前逐渐新兴出单芯片的多核处理器,有替代多处理器的趋势,有独到之处,不过还处于试用阶段,技术没有得到广泛地验证。所以其电路设计方法主要有两种:一是采用多口RAM或大规模可编程器件隔离处理器之间的总线,完成处理器间的互联防止冲突,程序加载时以一个处理器为主器件其它为从器件,主器件控制各从器件的加载,逐一进行;二是通过控制不同处理器的上电顺序来实现加载。目前,这两种方法的共同缺点是程序必须串行加载,即只有当一个处理器的程序加载完毕之后另一个才能开始加载。当一个系统中有多个处理器时,加载时间会更长,很不适应于实时性要求高的场合。
发明内容
本发明的目的在于提供了一种利用总线开关隔离各处理器实现程序并行加载运行的方法。其通过隔离处理器数据总线实现处理器并行分别同时加载,改变了以往只能串行加载的方法。假设有N个处理器,每个处理器加载时间分别是T1、T2、…、Tn,其中第m个处理器加载时间Tm为最长。那么,串行加载的时间为所有处理器加载时间相加之和,即Tsum = T1+T2+…+Tm+…+Tn;并行加载的时间Tsum等于第m个处理器加载时间Tm,即Tsum = Tm。很明显,并行加载所需时间远远小于串行加载时间,具有很好的实时性。
该方法关键是把处理器上电后IO口自身的固有特性和对总线开关的控制结合起来,确保每个处理器加载时都不会影响和其数据总线关联的处理器加载所需要的状态。
本发明的技术解决方案是:
一种利用总线开关控制多处理器实现高速并行加载的方法,其特殊之处在于,该方法包括:
1】利用对总线开关输出使能端OE的控制来隔离所有互联的处理器数据总线;
2】选用上电复位及程序加载期间其IO管脚输出为高电平的处理器,把该处理器的某个IO管脚接到该总线开关的使能端OE上,该IO管脚定义为OE_EN;若所用的处理器上电复位及程序加载期间其IO管脚输出为低电平,则应采用反相器取反后再接到OE上;
3】编写处理器程序代码,在每个处理器程序加载结束后、等待时间Tw后,
使IO管脚OE_EN输出低电平,并一直保持;
或把每个总线开关的控制端采用与门控制,其输入为两个相连的处理器IO管脚输出进行控制;把与门控制采用可编程器件CPLD来实现。
上述利用总线开关控制多处理器实现高速并行加载的方法,其特殊之处在于:
若有多个处理器互联时,则选择多个不同的IO管脚IO1、IO2……分别接到对应的总线开关的控制使能端OE上;
按上面3】所示编写不同的延时控制指令,控制使能端OE,即可。
上述每个等待时间Tw相同或不同,其取决于其代码大小及加载速度;其等待时间Tw为所有处理器的最长加载时间之差减去该处理器自身加载的时间。
上述利用总线开关控制多处理器实现高速并行加载的方法,其特殊之处在于:若为加载更可靠, 应在等待时间Tw再加上适当余量Δt, Δt根据系统自身特点而定。
上述编写处理器程序代码的程序包括汇编以及C语言,若采用FPGA则还应包括VHDL及Verilog。
本发明的优点在于:
1. 程序加载速度快,实现了程序的并行加载,特别适合于实时性要求高、
上电后需要迅速做出响应的场合。
2. 方法简单,易于排故。由于可分别独立加载,相互之间的加载不受外部
因素影响。一个处理器加载失败时通过测量OE端电平就容易识别确认,使得电路设计和调试更简单更容易。
3. 高灵活性。特别是在有多片处理器和FPGA互联时,不需担心加载时序上
的配合,使得软件编写方便。
4. 很高的可靠性。利用处理器上电后IO口自身的固有特性控制总线开关的
输出,不依赖任何外部电路。
附图说明
图1为总线开关输入输出逻辑关系图;
图2为上电后四片处理器采用软件延时方法实现加载的示意图;
图3为上电后四片处理器采用硬件控制方法实现加载的示意图。
具体实施方式
本发明是把处理器的某个IO管脚连接到总线开关控制端OE,用来控制总线开关的输出。总线开关控制端只有在低电平时才能使数据双向流动,在高电平时被禁止输出处于高阻状态,断开相连的处理器物理和电气连接关系。
参见图1中所示,处理器在上电加载器件其IO管脚输出固定为高电平,如 IO 1和IO 2,这是其固有特性,不受其它因素影响。只有当处理器加载完毕后,通过其程序控制才能输出低电平。只有此时,才能使总线开关输入输出实现数据双向流动,然后才能正常工作。因此,无论哪一个处理器先加载完毕,只要总线开关没有使能,那么已经加载完毕的处理器就无法影响总线状态从而影响另一个未加载完的处理器加载。详见图2和图3所示。
本发明的具体过程是:
1】 电路设计时应选用总线开关来隔离处理器,选用的总线开关数量为系统
总的处理器的数量减一。
2】 任选一处理器把其某个IO管脚(命名为CONTRL_OE)接到该总线开关的
使能端OE上。
3】 编写处理器代码,在加载结束后等待时间Tw后使IO管脚CONTRL_OE输出
低电平,并一直保持。
4】 若有多片处理器互联时,方法类似,则可选择不同的IO管脚分别接到对
应的总线开关的控制使能端,本发明以四片处理器为例,参见图2。
5】 按上面3】所示编写不同的延时控制指令,控制使能端OE2、OE3……,
即可。
6】 也可改为用硬件控制加载。若要采用硬件方法控制加载,则可采用图3
方式进行。把每个总线开关的控制端采用与门控制,其输入为两个相连的处理器IO管脚输出进行控制。这样,无需采用软件延时,把与门采用可编程器件CPLD来实现,整个电路实现更为灵活。
Claims (5)
1.一种利用总线开关控制多处理器实现高速并行加载的方法,其特征在于,该方法包括:
1】利用对总线开关输出使能端OE的控制来隔离所有互联的处理器数据总线;
2】选用上电复位及程序加载期间其IO管脚输出为高电平的处理器,把该处理器的某个IO管脚接到该总线开关的使能端OE上,该IO管脚定义为OE_EN;若所用的处理器上电复位及程序加载期间其IO管脚输出为低电平,则应采用反相器取反后再接到OE上;
3】编写处理器程序代码,在每个处理器程序加载结束后延时等待时间Tw,
使IO管脚OE_EN输出低电平,并一直保持;
或把每个总线开关的控制端采用与门控制,其输入为两个相连的处理器IO管脚输出进行控制;把与门控制采用可编程器件CPLD来实现。
2.根据权利要求1所述利用总线开关控制多处理器实现高速并行加载的方法,其特征在于:
若有多个处理器互联时,则选择多个不同的IO管脚IO1、IO2……分别接到对应的总线开关的控制使能端OE上;
按上面3】所示编写不同的延时控制指令,控制使能端OE,即可。
3.根据权利要求1或2任一所述利用总线开关控制多处理器实现高速并行加载的方法,其特征在于:所述每个等待时间Tw相同或不同,其取决于其代码大小及加载速度;其等待时间Tw为所有处理器的最长加载时间之差减去该处理器自身加载的时间。
4.根据权利要求3所述利用总线开关控制多处理器实现高速并行加载的方法,其特征在于:若为加载更可靠, 应在等待时间Tw再加上适当余量Δt, Δt根据系统自身特点而定。
5.根据权利要求4所述利用总线开关控制多处理器实现高速并行加载的方法,其特征在于:所述编写处理器程序代码的程序包括汇编以及C语言,若采用FPGA则还应包括VHDL及Verilog。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011104364855A CN102591819A (zh) | 2011-12-23 | 2011-12-23 | 一种利用总线开关控制多处理器实现高速并行加载的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011104364855A CN102591819A (zh) | 2011-12-23 | 2011-12-23 | 一种利用总线开关控制多处理器实现高速并行加载的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102591819A true CN102591819A (zh) | 2012-07-18 |
Family
ID=46480502
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011104364855A Pending CN102591819A (zh) | 2011-12-23 | 2011-12-23 | 一种利用总线开关控制多处理器实现高速并行加载的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102591819A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1728554A (zh) * | 2004-07-30 | 2006-02-01 | 杭州华为三康技术有限公司 | 功能复用芯片管脚的配置电路及配置功能复用芯片管脚的方法 |
US20060090017A1 (en) * | 2004-10-25 | 2006-04-27 | Samsung Electronics Co., Ltd. | Microprocessor system with memory device including a DMAC, and a bus for DMA transfer of data between memory devices |
US20060218335A1 (en) * | 2005-03-23 | 2006-09-28 | Hofmann Richard G | Minimizing memory barriers when enforcing strongly-ordered requests in a weakly-ordered processing system |
CN102096892A (zh) * | 2010-12-01 | 2011-06-15 | 华中科技大学 | 嵌入式实时图像处理平台装置 |
-
2011
- 2011-12-23 CN CN2011104364855A patent/CN102591819A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1728554A (zh) * | 2004-07-30 | 2006-02-01 | 杭州华为三康技术有限公司 | 功能复用芯片管脚的配置电路及配置功能复用芯片管脚的方法 |
US20060090017A1 (en) * | 2004-10-25 | 2006-04-27 | Samsung Electronics Co., Ltd. | Microprocessor system with memory device including a DMAC, and a bus for DMA transfer of data between memory devices |
US20060218335A1 (en) * | 2005-03-23 | 2006-09-28 | Hofmann Richard G | Minimizing memory barriers when enforcing strongly-ordered requests in a weakly-ordered processing system |
CN102096892A (zh) * | 2010-12-01 | 2011-06-15 | 华中科技大学 | 嵌入式实时图像处理平台装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10216693B2 (en) | Computer with hybrid Von-Neumann/dataflow execution architecture | |
CN103064006B (zh) | 集成电路的测试装置 | |
US20110283130A1 (en) | Power control manager | |
CN102365624A (zh) | 多处理器数据处理系统中的调试信令 | |
CN109613970B (zh) | 一种基于fpga和dsp架构的低功耗处理方法 | |
US10656911B2 (en) | Power control for a dataflow processor | |
CN102540952B (zh) | 可编程控制器以及操作方法 | |
Parai et al. | An overview of microcontroller unit: from proper selection to specific application | |
Abdelkrim et al. | Dynamic partial reconfiguration contribution on system on programmable chip architecture for motor drive implementation | |
KR20170016378A (ko) | 하이 레벨 합성에서의 시스템 아키텍처 추출법 | |
CN101133375A (zh) | 控制时钟分配域的时钟分配的顺序 | |
Sokolov et al. | Design and verification of speed-independent multiphase buck controller | |
US20140300614A1 (en) | Programmable prediction logic in command streamer instruction execution | |
Otero et al. | ULSNAP: An ultra-low power event-driven microcontroller for sensor network nodes | |
CN211349065U (zh) | 集成电路和处理系统 | |
CN102591819A (zh) | 一种利用总线开关控制多处理器实现高速并行加载的方法 | |
Rykunov | Design of asynchronous microprocessor for power proportionality | |
KR102476357B1 (ko) | 클럭 관리 유닛과 이를 적용하는 집적 회로 및 시스템 온 칩 및 그 동작 방법 | |
WO2002043075A9 (en) | Edge triggered function clock generator and method of deriving a clock signal for executing instruction sequences in an i/o interface | |
Othman et al. | MPSoC design of RT control applications based on FPGA SoftCore processors | |
Lee et al. | Distributed and parallel real-time control system equipped FPGA-Zynq and EPICS middleware | |
CN101807049A (zh) | 基于嵌入式arm cpu实现并行总线外部扩展的方法 | |
RU139236U1 (ru) | Модуль процессорный | |
CN103677896A (zh) | 实现智能手机多处理器高速并行加载的系统 | |
CN111857310A (zh) | 元器件的供电系统及其方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20120718 |