KR19980077117A - 패킷 데이터 스왑장치 - Google Patents
패킷 데이터 스왑장치 Download PDFInfo
- Publication number
- KR19980077117A KR19980077117A KR1019970014088A KR19970014088A KR19980077117A KR 19980077117 A KR19980077117 A KR 19980077117A KR 1019970014088 A KR1019970014088 A KR 1019970014088A KR 19970014088 A KR19970014088 A KR 19970014088A KR 19980077117 A KR19980077117 A KR 19980077117A
- Authority
- KR
- South Korea
- Prior art keywords
- packet data
- data
- processor
- pld
- fifo
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/6245—Modifications to standard FIFO or LIFO
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/13—Flow control; Congestion control in a LAN segment, e.g. ring or bus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2458—Modification of priorities while in transit
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/25—Pc structure of the system
- G05B2219/25268—PLD programmable logic device
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Communication Control (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 발명은 PLD 회로를 이용하여 패킷 데이터 스왑을 하드웨어로 구현함으로써 서로 다른 종류의 프로세서간의 패킷 통신을 고속으로 수행할 수 있도록 한 패킷 데이터 스왑장치에 관한 것으로, 패킷 통신을 수행하고자 하는 프로세서(10)에 출력되는 칩 실렉트 신호(/cs)와 어드레스(addr[1..0])를 입력하여 FIFO에서 읽혀지는 패킷 데이터(dadain[7..0])를 스왑하고, 이 스왑된 패킷 데이터(Data[31..0])를 상기 프로세서(10)로 출력하는 PLD부(20)와, 외부의 타 프로세서로부터 SCC(40)를 거쳐 전송되는 패킷 데이터를 저장하고, 상기 PLD부(20)에서 출력되는 리드신호(ff_rd)에 따라 저장된 패킷 데이터를 PLD부(20)로 출력하는 FIFO(30)를 포함하여 구성되며, 프로세서가 FIFO에서 수신된 패킷 데이터를 읽을 경우 데이터 스왑이 이미 이루어진 값을 읽도록 PLD를 통해 구현함에 따라 서로 다른 기종간의 패킷 통신이 고속으로 수행되어 패킷 데이터의 처리 성능을 향상시킬 수 있게 되는 효과가 있다.
Description
본 발명은 PLD(Programmable Logic Device) 회로를 이용하여 패킷 데이터 스왑을 하드웨어로 구현함으로써 서로 다른 종류의 프로세서간의 패킷 통신을 고속으로 수행할 수 있도록 한 패킷 데이터(Packet Data) 스왑(Swap) 장치에 관한 것이다.
일반적으로, 인텔 계열 프로세서와 모토로라 계열 프로세서 간의 패킷 통신을 수행하는 경우 서로의 최상위 바이트 및 최하위 바이트에 대한 패킷 데이터의 어드레스가 서로 상반되게 되어있다.
따라서, 종래에는 소프트웨어에서 데이터의 스왑을 구현하여 인텔 계열 프로세서와 모토로라 계열 프로세서 간의 패킷 통신을 수행하였다.
그러나, 상기와 같이 종래의 데이터 스왑이 소프트에 의해 구현되므로 패킷 데이터의 전송 속도가 느려지게 되고, 이에 따라 전체적인 통신 성능이 저하되게 되는 문제점이 있었다.
따라서, 본 발명은 상기와 같은 문제점을 해결하기 위해 안출한 것으로서, 그 목적은 PLD 회로를 이용하여 서로 다른 종류의 프로세서간의 데이터 스왑을 하드웨어로 구현함으로써 패킷 데이터의 처리 속도를 향상시킬 수 있도록 한 패킷 데이터 스왑장치를 제공하는 데에 있다.
이러한 목적을 달성하기 위한 본 발명의 패킷 데이터 스왑장치는 프로세서가 어드레스를 이용하여 읽을 데이터의 크기를 PLD에 알려주면, PLD가 FIFO에서 한 바이트씩 읽어서 데이터 스왑을 한 다음 프로세서 데이터 버스에 스왑된 데이터를 실어 프로세서에 출력하도록 함을 특징으로 한다.
도 1은 본 발명에 의한 패킷 데이터 스왑장치의 블록 구성도.
도 2는 도 1의 PLD부의 상세한 회로 구성도.
도 3은 도 2의 ffoutst부의 동작 흐름을 보인 상태도.
도 4는 본 발명에 의한 패킷 데이터의 스왑 결과를 보인 도면.
*도면의 주요부분에 대한 부호의 설명*
10:프로세서20:PLDd부
21:ffoutst부30:FIFO
40:SCC
도 1은 본 발명에 의한 패킷 데이터 스왑장치의 블록 구성도로서, 패킷 통신을 수행하기 위한 프로세서(10)와, 상기 프로세서(10)에서 출력되는 칩 실렉트(chip select) 신호(/cs)와 어드레스(addr[1..0])를 입력하여 FIFO에서 읽혀지는 패킷 데이터(dadain[7..0])를 스왑하고, 이 스왑된 패킷 데이터(Data[31..0])를 상기 프로세서(10)로 출력하는 PLD부(20)와, 외부의 타 프로세서(도시되지 않음)로부터 SCC(Serial Communication Controller)(40)를 거쳐 전송되는 패킷 데이터를 저장하고, 상기 PLD부(20)에서 출력되는 리드신호(ff_rd)에 따라 저장된 패킷 데이터를 PLD부(20)로 출력하는 FIFO(30)로 구성된다.
도 2는 도 1의 PLD부의 상세한 회로 구성도로서, 상기 프로세서(10)로부터 출력되는 칩 실렉트 신호(/cs)와 어드레스(addr[1..0])는 물론 클럭신호(clk)와 리세트신호(/reset)를 입력하여 상기 FIFO(30)에서 패킷 데이터를 읽기 위한 신호(ff_rd)와 몇 바이트를 읽은 것인가 하는 바이트 신호(byte sel [3..0])를 상기 FIFO(30)에 출력함으로써 출력함으로서 패킷 데이터를 스왑하는 ffoutst부(21)와 바이트별 패킷 데이터를 래치하기 위한 다수의 D플립플롭(DFF,DFFF) 및 논리 게이트(NOT, OR2, SOFT)들로 구성된다.
도 3은 도 2의 ffoutst부(21)의 동작 흐름을 보인 상태도이고, 도 4는 본 발명에 의한 패킷 데이터의 스왑 결과를 보인 도면이다.
상기와 같이 구성된 본 발명의 패킷 데이터 스왑과정을 도 3의 ffoutst부(21)의 동작을 참조하여 설명하면 다음과 같다.
전송 선로를 통해 SCC(40)가 수신한 패킷 데이터들이 FIFO(30)에 저장되게 되는데, 상기 FIFO(30)에 저장된 패킷 데이터를 프로세서(10)가 읽기 위해서는 먼저 PLD부(20)를 통해 상시 패킷 데이터가 스왑되어야만 상반되는 어드레스에 따라 저장된 패킷 데이터를 제대로 인식할 수 있게 된다.
이에 따라, PLD부(20)는 프로세서(20)로부터 출력되는 칩 실렉트 신호(/cs)와 몇 바이드의 데이터를 읽을 것인가하는 어드레스 신호(addr[1..0])를 입력하여 리드신호(ff_rd)를 생성한다.
즉, 상기 프로세서(10)가 몇 바이트의 데이터를 읽는가는 어드레스로서 구분 할 수 있게 된다.
어드레스가 '3'이면 네 바이트를, '1'이면 두 바이트를, '0'이면 한 바이트를 FIFO(30)에서 읽어서 프로세서의 데이터 버스에 싣게 되는 것이다.
만약, 네 바이트를 읽는 경우에는 FIFO(30)에서 먼저 읽은 바이트가 최상위(data[31..24])로 그 다음 바이트들이 data[23..16], data[15..8], data[7..0]의 순으로 데이터 버스에 실리게 된다.
두 바이트를 읽는 경우에는 먼저 수신된 바이트가 data[15..8], 2번째 바이트는 data[7..0]가 데이터에 버스에 실린다.
상기와 같은 동작은 PLD부(20)의 ffoutst부(21)의 동작으로서, 도 3에 도시된 바와 같이, 초기 상태(init)에서 칩 실렉트신호(cs)와 어드레스 신호(adde1, addr0) 값에 따라 FIFO(30)에서 몇 바이트를 읽은 것인지를 판단하여 네 바이트라면 ff_rd3상태로, 세 바이트이면 ff_rd2상태로, 두 바이트이면 ff_rd1상태로, 한 바이트이면 ff_rd0의 각 상태로 천이한다.
그리고, 상기 ffoutst부(21)는 FIFO(30)에서 데이터를 읽기 위한 신호(/ff_rd)를 만들기 위한 인에이블 신호(/ff_rd_en)를 제어한다.
이때, FIFO(30)에서 읽은 데이터(datain[7..0])를 32비트 데이터 버스에 원하는 위치에 싣기 위해 바이트 신호(byte_sel[3..0])도 제어한다.
도 4의 PLD부(20)를 통해 데이터가 스왑된 결과를 보면 어드레스가 '3' 프로세서(10)가 칩 실렉트 신호(/cs)를 구동하면 FIFO(20)에서 네 바이트를 읽게 되며, 이 결과 데이터 '11', '22', '33', '44'가 프로세서 데이터 버스(dataout[31..0]) 에 실리게 된다.
두 바이트를 읽기 위해서는 어드레스가 '1'로 칩 실렉트 신호(/cs)를 구동하면 데이터 '55', '66'이 프로세서 데이터 버스에 실리는 것을 볼 수 있다.
상기와 같이 프로세서(10)가 원하는 데이터를 데이터 버스에 실은 다음 /dtack를 구동함에 따라 프로세서(10)는 패킷 데이터를 수신하여 통신을 수행하게 된다.
이상, 상기 설명에서와 같이 본 발명은 프로세서가 FIFO에서 수신된 패킷 데이터를 읽을 경우 데이터 스왑이 이미 이루어진 값을 읽도록 PLD를 통해 구현함에 따라 서로 다른 기종간의 패킷 통신이 고속으로 수행되어 패킷 데이터의 처리 성능을 향상시킬 수 있게 되는 효과가 있다.
Claims (1)
- 패킷 통신을 수행하고자 하는 프로세서(10)에 출력되는 칩 실렉트 신호(/cs)와 어드레스(addr[1..0])를 입력하여 FIFO에서 읽혀지는 패킷 데이터(dadain[7..0])를 스왑하고, 이 스왑된 패킷 데이터(Data[31..0])를 상기 프로세서(10)로 출력하는 PLD부(20)와, 외부의 타 프로세서로부터 SCC(40)를 거쳐 전송되는 패킷 데이터를 저장하고, 상기 PLD부(20)에서 출력되는 리드신호(ff_rd)에 따라 저장된 패킷 데이터를 PLD부(20)로 출력하는 FIFO(30)를 포함하여 구성됨을 특징으로 하는 패킷 데이터 스왑장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970014088A KR100313758B1 (ko) | 1997-04-16 | 1997-04-16 | 패킷데이터스왑장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970014088A KR100313758B1 (ko) | 1997-04-16 | 1997-04-16 | 패킷데이터스왑장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19980077117A true KR19980077117A (ko) | 1998-11-16 |
KR100313758B1 KR100313758B1 (ko) | 2001-12-28 |
Family
ID=37682841
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970014088A KR100313758B1 (ko) | 1997-04-16 | 1997-04-16 | 패킷데이터스왑장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100313758B1 (ko) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5778406A (en) * | 1995-06-30 | 1998-07-07 | Thomson Consumer Electronics, Inc. | Apparatus for delivering CPU independent data for little and big endian machines |
-
1997
- 1997-04-16 KR KR1019970014088A patent/KR100313758B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR100313758B1 (ko) | 2001-12-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5175819A (en) | Cascadable parallel to serial converter using tap shift registers and data shift registers while receiving input data from FIFO buffer | |
US5249160A (en) | SRAM with an address and data multiplexer | |
US4835414A (en) | Flexible, reconfigurable terminal pin | |
US5507001A (en) | Microcomputer including CPU and serial data communication unit operating in synchronism | |
US5463756A (en) | Memory control unit and associated method for changing the number of wait states using both fixed and variable delay times based upon memory characteristics | |
JP2650124B2 (ja) | 半導体集積回路 | |
US4661925A (en) | Computer control memory apparatus providing variable microinstruction length | |
US5588124A (en) | Microcomputer | |
KR19980077117A (ko) | 패킷 데이터 스왑장치 | |
KR950025534A (ko) | 인터럽트신호의 멀티플렉싱회로 | |
KR19980083459A (ko) | 데이터버스 사이즈 조정 장치 | |
KR200142909Y1 (ko) | 입출력 인터페이스 장치 | |
JP3611049B2 (ja) | 内部レジスタ回路 | |
KR100252508B1 (ko) | 통신처리시스템의 프로세서 보드에서 롬 인터페이스장치 | |
KR100244885B1 (ko) | 다중인터럽트통신회로 | |
KR940001028Y1 (ko) | 캐쉬 메모리 클럭 제어회로 | |
KR910006684Y1 (ko) | 중앙처리장치 신호 제어회로 | |
KR100346268B1 (ko) | 데이터 버스 제어 시스템 | |
KR0146201B1 (ko) | 데이타 입출력 제어 회로 | |
KR970008526B1 (ko) | 시스템간의 데이타 공유를 위한 인터페이스 장치 | |
CA1234220A (en) | Bus translator | |
KR20050060715A (ko) | 마이크로 프로세서의 초기화 장치 | |
KR870000834Y1 (ko) | 마이크로 프로세서의 16비트 단위체계를 8비트 체계로 변환시키는 장치 | |
KR100199190B1 (ko) | 데이타 포착회로 | |
JPH05334234A (ja) | 高速dma転送装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20061020 Year of fee payment: 6 |
|
LAPS | Lapse due to unpaid annual fee |