CN87103247A - 报文通信接口电路 - Google Patents
报文通信接口电路 Download PDFInfo
- Publication number
- CN87103247A CN87103247A CN87103247A CN87103247A CN87103247A CN 87103247 A CN87103247 A CN 87103247A CN 87103247 A CN87103247 A CN 87103247A CN 87103247 A CN87103247 A CN 87103247A CN 87103247 A CN87103247 A CN 87103247A
- Authority
- CN
- China
- Prior art keywords
- circuit
- message
- buffer circuits
- buffer
- counter
- 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
- 239000000872 buffer Substances 0.000 claims abstract description 77
- 230000006870 function Effects 0.000 claims abstract description 7
- 230000003068 static effect Effects 0.000 claims abstract description 5
- 230000015654 memory Effects 0.000 claims description 31
- 230000002457 bidirectional effect Effects 0.000 claims description 5
- 238000000034 method Methods 0.000 claims description 2
- 230000009977 dual effect Effects 0.000 abstract 1
- 230000003139 buffering effect Effects 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 238000005381 potential energy Methods 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 1
Images
Landscapes
- Multi Processors (AREA)
Abstract
两个彼此反并行连接的缓冲器电路1,其中每一个包含一个具有双存取端口的静态随机存取存储器、两个计数器、一个比较器和一个检测器。两个连接到两个缓冲电路1的状态寄存器具有如下位功能:报文是否有效及是否收到,缓冲电路是否满及是否空。两个连接到两个缓冲器电路1及两个状态寄存器5的命令寄存器6具有如下位功能:报文是否有效及是否收到。两个中断电路9按缓冲器电路1的状态控制两个处理机。
Description
本发明涉及用于在两台处理机之间通过报文进行通信的接口电路,除了输入/输出电路以外,该接口电路还包括对报文采用先进先出工作方式的缓冲器电路。
已知的能够使两台微处理机彼此相配合的这种接口电路,由一种包含一系列数据触发器的长移位寄存器所组成。
在具有8位数据总线和128位长移位寄存器的情况下,这种电路需要大量的晶体管。
此外,由于通过移位寄存器进行数据的移位占用一定的时间,所以使用移位寄存器相对地显著降低了通信速度。
本发明的目的是排除这种不利因素和提供一种既经济又能在处理机之间进行更快速的通信的报文通信接口电路。
为此,该接口电路包括:
(1)两个先进先出型的缓冲器电路,它们彼此反并行连接并一起构成对报文采用的双向缓冲器,这种缓冲器能够通过输入/输出电路同两处理机连接;每个缓冲器电路包含:
一个静态随机存取存储器,它具有能够异步地读出及写入其地址的双存取端口;
-两个计数器,即,写计数器和读计数器,它们跟踪来自上述存储器的地址;
-把由读记数器所给的地址同由写计数器所给的地址进行比较的比较器;以及
一连结到比较器以及计数器的输入端的检测器,它用来指示存储器是满或者空;
该接口电路进一步包括:
-两个状态寄存器,它们连接到两个缓冲器电路并具有如下的位功能:报文是否有效,报文是否收到,缓冲器电路是否满,缓冲器电路是否空;
-两个命令寄存器,它们与两个缓冲器电路以及两个状态寄存器连结,并具有如下位功能:报文是否有效,报文是否收到;和
-两个与缓冲器电路连接的中断电路,用于按照对应的缓冲器电路的状态控制两个处理机。
包含具有双存取端口的静态随机存取存储器和两个记载该存储器地址的计数器的先进先出型缓冲器电路是已知的,并且,把这种缓冲器电路用于两台处理机之间的接口电路中也是已知的。但是,已知的接口电路不包含两个彼此反并行连接的缓冲器电路。不过,为了扩大存储器并从而增加缓冲器电路的信息存储能力,已知的接口电路或者具有一个这种缓冲电路,或者具有两个或更多的彼此并行连接的这种缓冲电路。因此,这种已知的接口电路也可以工作,但是只能在一个方向把信息从一个处理机传送到另一个处理机。此处,已知的接口电路更适合于传送比缓冲器电路中的地址包含更多位数的信息,而不适合通过这样的报文进行通信,即,这些报文含有的位数明显地少于缓冲器电路中地址所含有的位数。
上述已知的接口电路的目的是在一个方向上尽可能快地把信息从一个微处理机传送到另一个微处理机,但是在读出期间不可能再确定信息的起始和结束的位置。当必须获得这种指示时,就必须在信息中加上必要的软件,依靠这种软件,在信息开始和结束时给出指示信号。
本发明的接口电路不需要这种软件。本发明的接口电路允许以多种方式(或者以多种模式)工作,而所述已知的接口电路只能以一种方式(或者以一种模式)工作。
在本发明的最佳实施例中,本发明的接口电路是在单一芯片上实现的。
从以下关于本发明的报文通信接口电路的叙述中,本发明的其他细节和优点将会体现出来;仅作为例子给出这种说明,它不限制本发明;说明中的标号与附图中的标号一致。
图1是本发明的接口电路的方块图。
图2是如图1中所示的接口电路的缓冲器电路的更详细的方块图。
在两张图中,相同的标号表示相同的部件。
如图1中所示的接口电路包括两个先进先出型的缓冲器电路,它们彼此反并行连接。
所述电路一起构成对报文采用的双向缓冲器。
一个缓冲器电路工作在一个方向,另一个缓冲器电路工作在另一个方向。图1中用箭头2表示所述方向。
图2中用图解法表示所述缓冲器电路1的结构,并将进一步给予说明。
两个缓冲器电路1以如下的方式连接到第一处理机和第二处理机,即,第一缓冲器电路以其输入端,第二缓冲电路以其输出端,借助数据总线结构3,通过第一输入/输出电路4连接到第一处理机;第一缓冲电路以其输出端,第二缓冲电路以其输入端,借助数据总线结构3,通过第二输入/输出电路4连接到第二处理机。
两个输入/输出电路4具有相同的、对本领域技术人员来说是显而易见的结构,对此将不作详细说明。它们具有各自的、通常形式的译码器,用于处理来自处理机的读和写信号以及选择信号,并把这些信号送到缓冲电路1。
所述电路4还通过线路10各自与两个缓冲电路1连接。
在任一侧,即,分别在第一处理机的一侧和第二处理机的一侧,接口电路包括状态寄存器5和命令寄存器6。
两个状态寄存器5各自连接到相应一侧的数据总线3。两个命令寄存器6也各自连接到相应一侧的数据总线3。
两个状态寄存器5各自都通过两条线路7连接到两个缓冲电路1。每一个所述命令寄存器6通过线路8连接到两个状态寄存器5。
状态寄存器5以及命令寄存器6都是已知结构的8位寄存器,此处将不给与更详细的描述。
状态寄存器5具有如下的位功能:第一位表示报文是否有效。当整个报文已被写进所属的缓冲器电路1中以及相应的命令寄存器中的“报文有效”位已经置“1”时,状态寄存器5的“报文有效”位被置“1”。当相应的命令寄存器中的“报文收到”位被置“1”时,状态寄存器的所述“报文有效”位自动复位到“0”。
状态寄存器的第二位表示是否收到报文。当已经从相应的缓冲电路1读出整个报文以及相应的命令寄存器6中的“报文收到”位已经置“1”时,状态寄存器的所述“报文收到”位自动复位到“0”。
状态寄存器5的第三位表示相应的缓冲器电路1是否满。当所述位是“1”时,这意味着缓冲器电路1已被写满,并且在进一步写入之前,首先必须从所述缓冲器电路中读出数据。当正在从满的缓冲器电路读出数据时,所述位自动复位到“0”。
第四位表示缓冲器电路1是否空。当相应的缓冲器电路1已被读空时,所述位是“1”;在进一步读出之前,必须把数据写进所述缓冲器电路。当正在把数据写入空的缓冲器电路时,所述位自动复位到“0”。
剩下的四个位未使用。
命令寄存器6的第一位表示报文是否有效。在整个报文已经被写入相应的缓冲器电路之后,对某此应用场合这个“报文有效”位应当置“1”。通过写入命令,所述位能够不再复位到“0”;但是当对应的状态寄存器5中的“报文收到”位是“1”时,所述位复位到“0”。
命令寄存器6的第二位表示报文是否已经收到。在某些应用场合下,当已经从相应的缓冲器电路1读出整个报文之后,所述“报文收到”位置“1”。通过写入命令,所述位能够不再复位到“0”;但是当相应的状态寄存器5中的“报文有效”位是“1”时,所述位复位到“0”。
命令寄存器6的剩余位未使用。
在两个待联机的处理机的一侧,该接口电路都备有中断电路9。
两个所述电路9的每一个借助线路11与位于该接口电路同一侧的状态寄存器5联系,从而间接地与缓冲电路1联系。中断电路9中断相应的处理机的主程序,使得能够实现数据转移。在中断电路9中将进一个初始化电路,它通过各条线路(为清晰起见在图中未示出)连接到各种电路,并且在各种电路接通电源时,保证各种电路获得其正确的状态。
每一个中断电路能够给予相应的处理机四种中断信号,即:“报文有效”信号,“报文收到”信号,“缓冲器电路满”信号以及“缓冲器电路空”信号。
此外,所述中断电路能给出一种初始化信号,一台处理机以此使另一台处理机复位;或者举例来说,在具有主一从设备的多机系统中,主处理机使从属处理机初始化。
在同一块芯片上实现了上述1至9的所有部件。所述芯片相对于连接两个缓冲电路1的轴是对称的。
如图2中所示,每个缓冲器电路1主要包含一个具有双存取端口的静态随机存取存储器(RAM),该RAM包括分立的读和写的部分,从而它允许同时进行读出和写入。
所述存储器12具有128字节的长度。所述数据总线结构3连接到存储器12的输入端和输出端。
在RAM12中,用旋转或寻址机构代替通常的移位寄存器的通道机构。
缓冲器电路1还包括两个计数器,即,写计数器13和读计数器14,它们跟踪来自RAM12的地址。
计数器13和14两者都通过总线15连接到RAM12,作为存储器12中位置或者地址的指示器。
在初始化时,通过由所述电路9之一所控制的脉冲,或者通过外部复位脉冲,把两个计数器13和14复位到“0”。
当来自输入/输出电路4的写脉冲通过线路10被耦合到写到计数器13和存储器RAM12时,通过数据总线3耦合到存储器12的信息就被写入所述存储器中由写计数器13所给定的地址上。
此后,该写计数器立即增值一个存储单元,从而指示下一个存储单元。
上述写命令可以反复出现,直至存储器12被全部写满为止。
当存储器12写满时,已经经历存储器12的全部地址的写计数器,返回指示与读计数器相同的存储单元,此时读计数器仍然指示着原来的存储单元。
读命令以类似的方式出现,从而每当通过数据总线3从存储单元读出信息之后,读计数器14移位一个存储单元。
需要一个这样的电路,它能判断存储器12是满还是空。
因此,缓冲器电路1包含一个比较器16,它通过总线15与两个计数器连接。所述比较器16把由读计数器14所给的地址与由写计数器所给的地址作比较。
所述比较器16通过线路17连接到检测器18(检测器18通过线路19连接到两个计数器13和14的输入端)并且能够通过线路7,以如下的方式把信号“空”或者“满”送到状态寄存器:当计器13和14复位到“0”时,触发“空”信号。当执行写命令时,读地址和写地址彼此不同。从而,“空”信号再次暂停使用。
如上所述,当存储器12满时,计数器13和14指示相同的地址。一旦计数器13和14指示相同的地址,比较器16就把一个信号耦合到检测器18。当上一个命令是写操作时,检测器18给出一个表明存储器12是满的信号。在新的数据可以进入存储器12之前,首先应当有读出操作。
当情况相反时,存储器12是空的状态,写计数器13和读计数14也指示向存储器12的相同的地址。比较器16再次把一个信号耦合到检测器18;当上一个操作是读出操作时,检测器18给出一个表明存储器12是空状态的信号。从而在把信息再次写入存储器12之前,不能再进行读的操作。
所述读命令和写命令完全异步地、乃至同时地出现,因为同时地写和读是可能的。因此,有可能通过该接口非常快速地输送信息;在任何下,其传送速度都显著地快于当使用由普通线性缓冲器代替作为旋转式缓冲器的存储器12所构成的接口时信息的传送速度。
该接口电路在两台异步的处理机之间提供一种报文缓冲器。当第二台处理机执行另处的任务时,第一台处理机能够把报文写进所述第二台处理机。第二台处理机在其可能时将读出该报文,而此时第一台处理机可能已经去执行其他任务。该电路特别适合用于作为“主-从”机设置的两台微处理机之间的通信。
该接口电路能够工作在四种不同的模式;状态模式,中断模式,混合模式以及在中断模式中具有双向缓冲器电路1的模式。
在状态模式中不使用中断信号。通过该接口电路连接的两台处理机按规定的时间间隔考察状态寄存器5。当发现“报文收到”位时,可以把报文输送到缓冲电路1中。当这个报文是完整的时,与该状态寄存器5有关的命令寄存器6中的“报文有效”位被置“1”。这导致另一个状态寄存器5中的“报文有效”位被置“1”。
当另一台处理机发现以上状态时,它能从缓冲电路1读出该报文。当所述读出结束时,命令寄存器6中的“报文有效”位被置“1”;此后,第一台处理机能够再次输送报文。
在中断模式中,其操作与上述模式中的相似,不同之点在于:其中使用了专用的中断信号,用以通知处理机:报文是有效的或者报文已经收到。在中断信号之后,可以直接读出或者写入报文。他传递报文之后,将命令寄存器6填满。
混合模式是上述两种模式的组合,其中一个处理器使用状态模式而另一个处理器使用中断模式。这可能,例如是一种主-从结构:主处理机工作在状态模式而从属处理机工作在中断模式。
当双向缓冲器电路工作中断模式时,就不用状态寄存器5和命令寄存器6。这里使用来自两个缓冲电路1的“满”信号和“空”信号来中断处理机的读或者写周期。处理机读一件报文,直至该报文结束,或者正使用的缓冲电路1的存储器12是空状态为止。必须等待,直至“空”信号再次变成无效才能进一步读出。
处理机能够写一件报文,直至该报文结束,或者正使用的缓冲电路1的存储器12是满状态为止。然后必须等待,直至“满”信号变成无效的才能进一步写。
用这种方法时,一件报文可以长于128字节。
本发明绝不限于上述实施例;在本专利申请书的范围内,可以从上述实施例,特别是在用以实施本发明的元件的数目、排列、结构和形状方面,引出许多变化。
Claims (4)
1、一种用于在两台处理机之间通过报文进行通信的接口电路,该电路除了输入/输出电路(4)还包括用于报文的先进先出工作方式的缓冲器电路(1),其特征在于该电路包含:
一两个彼此反并行连接并一起构成用于报文的双向缓冲器的先进先出型的缓冲器电路(1),该缓冲器能够通过输入/输出电路(4)与两台处理机连接,每一个所述缓冲器电路(1)包括:
--一个具有可以异步读出其地址和写入其地址的双存取端口的静态随机存取存储器(12),
-两个跟踪存储器(12)的地址的计数器,即,写计数器(13)和读计数器(14),
-用于把由读计数器(14)给出的地址和由写计数器(13)给出的地址作比较的比较器(16),
--一个连接到比较器(16)以及计数器(13)和(14)的输入端的、用于表明所述存储器是满或者空的检测器(18),
-两个状态寄存器(5),它们连接到两个缓冲器(1),并具有如下位功能,报文是否有效,报文是否收到,缓冲器电路是否满,以及缓冲器电路是否空,
-两个命令寄存器(6),它们连接到两个缓冲器(1)以及两个状态寄存器(5),并具有如下的位功能,报文是否有效,报文是否收到,
-两个连接到缓冲器电路(1)的、用于按照相应的缓冲器电路(1)的状态控制两个处理机的中断电路(9)。
2、如权利要求1所规定的接口电路,其特征在于:其中所述中断电路(9)通过所述状态寄存器(5)连接到所述缓冲电路(1)。
3、如权利要求1和2之一所规定的接口电路,其特征在于:该电路是在单一的芯片上实现的。
4、一种如上文所描述的或者如附图中所给出的接口电路。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
BE2/60976A BE904702A (nl) | 1986-04-30 | 1986-04-30 | Interface-schakeling voor communicatie door middel van boodschappen. |
BE2/60976 | 1986-04-30 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN87103247A true CN87103247A (zh) | 1987-12-30 |
Family
ID=3865807
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN87103247A Pending CN87103247A (zh) | 1986-04-30 | 1987-04-29 | 报文通信接口电路 |
Country Status (4)
Country | Link |
---|---|
CN (1) | CN87103247A (zh) |
IN (1) | IN164427B (zh) |
PT (1) | PT84811B (zh) |
ZA (1) | ZA873067B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1293739C (zh) * | 2002-06-15 | 2007-01-03 | 华为技术有限公司 | 高速数据链路控制协议发送处理模块及其数据处理方法 |
CN100359457C (zh) * | 2004-12-16 | 2008-01-02 | 华为技术有限公司 | 一种基于发送中断的通信接口实现正常工作的方法 |
CN100401731C (zh) * | 2002-06-15 | 2008-07-09 | 华为技术有限公司 | 高速数据链路控制协议接收处理模块及其数据处理方法 |
CN100419723C (zh) * | 2005-12-30 | 2008-09-17 | 北京中星微电子有限公司 | 多中断的缓存装置和方法 |
CN111385510A (zh) * | 2018-12-27 | 2020-07-07 | 新唐科技股份有限公司 | 可切换的i2s接口 |
-
1986
- 1986-07-25 IN IN564/CAL/86A patent/IN164427B/en unknown
-
1987
- 1987-04-29 CN CN87103247A patent/CN87103247A/zh active Pending
- 1987-04-29 ZA ZA873067A patent/ZA873067B/xx unknown
- 1987-04-30 PT PT8481187A patent/PT84811B/pt unknown
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1293739C (zh) * | 2002-06-15 | 2007-01-03 | 华为技术有限公司 | 高速数据链路控制协议发送处理模块及其数据处理方法 |
CN100401731C (zh) * | 2002-06-15 | 2008-07-09 | 华为技术有限公司 | 高速数据链路控制协议接收处理模块及其数据处理方法 |
CN100359457C (zh) * | 2004-12-16 | 2008-01-02 | 华为技术有限公司 | 一种基于发送中断的通信接口实现正常工作的方法 |
CN100419723C (zh) * | 2005-12-30 | 2008-09-17 | 北京中星微电子有限公司 | 多中断的缓存装置和方法 |
CN111385510A (zh) * | 2018-12-27 | 2020-07-07 | 新唐科技股份有限公司 | 可切换的i2s接口 |
Also Published As
Publication number | Publication date |
---|---|
IN164427B (zh) | 1989-03-18 |
ZA873067B (en) | 1987-12-30 |
PT84811A (en) | 1987-05-01 |
PT84811B (en) | 1989-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100378690C (zh) | 少引线数总线上的存储器事务处理的系统和方法 | |
EP0244540B1 (en) | Write request buffering apparatus | |
CN1022723C (zh) | 双向数据传输装置 | |
CN1010809B (zh) | 页式存储器中数据的存取装置和方法 | |
EP0388052A2 (en) | Multiprocessor system synchronisation | |
EP1764703A1 (en) | A system for providing access to multiple data buffers of a data retaining and processing device | |
CN87107293A (zh) | 用于数字数据处理器的总线接口电路 | |
CN1825296A (zh) | 介接不同宽度总线的接口电路、系统及方法 | |
JPS59501762A (ja) | 直接メモリアクセス・インタ−フエイス装置 | |
JP3569735B2 (ja) | Sramキャッシュ用ワード幅選択 | |
CN1737781A (zh) | 改进数据传送的控制器设备和方法 | |
CN1394310A (zh) | 处理器间通信系统 | |
JP2695017B2 (ja) | データ転送方式 | |
JPS6274170A (ja) | 文字画像読取装置 | |
KR920700432A (ko) | 직접기억장치 접근용 제어기 | |
CN112131176A (zh) | 一种基于pcie的fpga快速局部重构方法 | |
CN87103247A (zh) | 报文通信接口电路 | |
CN100432970C (zh) | 流水线化的ata设备初始化平台和装置 | |
CN1017837B (zh) | 具有单比特置位和复位功能的主存储器插板 | |
CN1818893A (zh) | 外围设备的lpc总线接口时序转换方法及转换装置 | |
CN1044720A (zh) | 具有共用控制存储器的多处理机控制器 | |
US6938118B1 (en) | Controlling access to a primary memory | |
EP0690382A2 (en) | Computer system with a multiplexed address bus and pipelined write operations | |
KR960001023B1 (ko) | 이기종 버스시스템에서의 버스 공유방법 및 버스 스와핑장치 | |
CN1203419C (zh) | 一种具有改进结构的微处理器系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication |