KR20020035628A - 프로세서 시스템, 특히 통신 장치를 위한 프로세서 시스템 - Google Patents
프로세서 시스템, 특히 통신 장치를 위한 프로세서 시스템 Download PDFInfo
- Publication number
- KR20020035628A KR20020035628A KR1020027004290A KR20027004290A KR20020035628A KR 20020035628 A KR20020035628 A KR 20020035628A KR 1020027004290 A KR1020027004290 A KR 1020027004290A KR 20027004290 A KR20027004290 A KR 20027004290A KR 20020035628 A KR20020035628 A KR 20020035628A
- Authority
- KR
- South Korea
- Prior art keywords
- processor system
- data
- execution device
- execution
- instruction
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims abstract description 38
- 238000012545 processing Methods 0.000 claims abstract description 30
- 230000015654 memory Effects 0.000 claims abstract description 19
- 239000000872 buffer Substances 0.000 claims description 21
- 238000000034 method Methods 0.000 claims description 16
- 230000005540 biological transmission Effects 0.000 claims description 12
- 230000006870 function Effects 0.000 description 20
- 238000012546 transfer Methods 0.000 description 10
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Communication Control (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
- Multi Processors (AREA)
Abstract
본 발명은 통신 제어기로서 구성되고, 프로그램 메모리(8)에 파일링된 명령어들을 실행하기 위한 중앙 처리 장치(1)를 포함하며, 처리 장치(1)는 프로그램 메모리(8)로부터 명령어를 판독하고 복호화하는 단일 경로(2, 3)만을 포함하는 프로세서 시스템에 관한 것이다. 또한, 명령어를 판독하고 복호화하는데 공통으로 사용되는 경로(2, 3)에 각각 접근하는 상이한 프로그램의 흐름을 병렬로 실행하는 병렬 작동 가능한 여러 개의 실행 경로(4, 5; 6, 7)가 제공된다.
Description
통신 제어기는 통신 전송기(transmitter), 라우터(routers) 또는 게이트웨이(gateways)에 사용되는데, 이하에서는 설명의 편의를 위하여 호스트시스템(host systems)으로 기술된다. 일반적으로 통신 정보의 송수신은 통신 제어기의 도움을 빌어 관리되거나 제어된다. 디지털 데이터 형태로 존재하는 통신 정보는 전송을 위해 버퍼로부터 수집된 후 경우에 따라 추가 정보 비트와 페키징(packaging)되어 전송 버퍼에 기록된다. 그 후 전송 버퍼의 내용은 반송 신호(carrier signal) 상에 디지털 전송 데이터를 변조하고, 디지털에서 아날로그로 변환하여 통신 채널을 통해 수신기(receiver)로 전송하는 변조기(modulator) 또는 트랜시버(transceiver)로 전송된다.
통신 정보는 다수의 층(layers)의 형태로 구성되고 각기 층(layer)으로 기술되는 소위 통신 프로토콜(protocols)에 따라 처리된다. 전송 방향에 있어서 특정 층의 입력 데이터는 각 층에서 소위 프로토콜 헤더(header)와 함께 페키징되어 하위 층으로 전달되어야 한다. 반면에 수신 방향에 있어서는, 특정 입력 데이터는 프로토콜 헤더로부터 추출되어 각각의 경우 상위 층으로 전달되어야 한다. 따라서, 예를 들어 호스트 컴퓨터(host computer) 또는 마이크로제어기(microcontroller)를 통해 외부로부터 공급되는 제어 명령어의 평가 및 실행과 함께 통신 제어기의 주목적은 입력되는 비트스트림(bitstream)으로부터 헤더 정보를 추출하고, 전송될 헤더 정보를 비트스트림에 삽입하고, 특정 데이터를 다른 층으로 전달(즉, 데이터 전송)하는 것이다.
통신 제어기의 아키텍쳐와 관련하여, 다양한 제안이 있어 왔는데, 이들 제안은 근본적으로 각 경우에 사용된 중앙 처리 장치(CPU; central processor unit), 메모리 구조(memory structure), 버스 구조(bus structure) 또는 명령어 세트에 의하여 특징지워질 수 있다. 전형적인 통신 제어기 아키텍쳐는 예를 들어, 1989년 12월에 발행된 "IEEE Journal of Solid-State Circuits"지 제 24권에 개시된 J. D. Blair 등의 "16Mb/s Adapter Chip for the IBM Token-Ring Local Area Network"에 개시되어 있다. 위에서 상술한 데이터 전송은 통신 제어기에서 병목현상(bottleneck)을 자주 나타낸다. 전술한 공지의 아키텍쳐의 경우, 이는 하나의 프로그램 시퀀스(sequence)를 다른 프로그램 시퀀스로 전환(changeover)시키는 결과를 가져오며, 이는 또한 "태스크 전환(task switch)"이라고도 하며, 비교적 긴 시간이 걸린다.
이러한 이유로 다양한 명령어 또는 프로그램 시퀀스가 병렬로 처리될 수 있게 하는 아키텍쳐를 갖는 통신 제어기가 제안되어 왔다. 이와 같이, 예를 들어, 통신 제어기가 미국 특허 제 5,434,976호에 제안되어 있는데, 이 제어기는 상호 독립적인 두 개의 중앙 처리 장치를 포함하며, 각 처리 장치는 실행될 명령어를 수집하거나 판독하고 그 판독된 명령어를 복호화하고 실행하는 자체 경로를 가지고 있다. 소위 MAC("Medium Access control") 층의 기능은 본질적으로 처리 장치 중 하나의 도움으로 수행되는 반면 다른 하나의 처리 장치는 본질적으로 호스트 명령어를 실행하고 데이터 송수신과 관련된 버퍼 메모리 기능을 처리한다.
이러한 종래 구조에 의하여 통신 정보를 효과적으로 처리하는 것이, 특히 비교적 신속하게 데이터를 전송하는 것이 가능하지만, 이러한 구조는 두 개의 별개 처리장치가 요구되어 전력 소모와 필요한 칩 공간을 증가시킨다는 단점이 있다.
본 발명은 프로세서 시스템, 특히 통신 장치를 위한 프로세서 시스템에 관한 것이다.
본 발명은 바람직한 실시예로써 첨부된 도면을 참조하여 이하 더욱 상세하게 설명된다.
도 1은 본 발명의 일 실시예에 따른 중앙 처리 장치 또는 중앙 장치(CPU)의단순화된 블록도이다.
도 2는 본 발명에 따른 프로세서 시스템과 함께 도 1에 도시된 처리 장치의 사용을 도시하는 도이다.
도 3a-3c는 도 2에 도시된 입/출력포트 및 레지스터의 확대 예시도를 나타낸다.
그러므로 본 발명의 목적은 한편으로 최소한의 칩 공간 요구와 전력 소모를 갖고 다른 한편으로 통신 정보를 처리하는데 필요한 기능이 신속하고 효과적으로 실행될 수 있는 프로세서 시스템을 제안하는데 있다.
이러한 목적은 청구항 1의 특징을 포함하는 프로세서 시스템에 의한 본 발명에 따라 달성된다. 종속항들은 본 발명의 바람직하고 유익한 실시예들을 정의한다.
특히 통신 제어기의 형태로 고안된 본 발명에 따른 프로세서 시스템은 프로그램 메모리에 저장된 명령어를 실행하는 하나의 중앙 처리 장치(CPU)만을 포함한다. 처리 장치는 프로그램 메모리로부터 명령어를 판독하고 판독된 명령어를 복호화하는 단일 경로를 구비한다. 또한 병렬로 작동 가능한 몇 개의 실행 경로가 다양한 명령어 또는 프로그램 시퀀스의 병렬 실행을 위해 제공된다. 이 경로는 명령어를 판독하고 복호화하는데 공통으로 사용되는 경로에 각각 접속되어 있다.
상이한 프로그램 시퀀스의 병렬 처리가 이러한 방식으로 기본적으로 가능하여, 칩 공간 요구와 전력 소모는 명령어를 판독하고 복호화하는데 공통으로 사용되는 경로에 의해 최소화될 수 있다.
실행 경로 중 하나만이 CPU의 정상적 계산 및 어드레싱 기능을 수행하고 다른 하나의 실행 경로가 오직 일정한 특정 기능을 수행한다면, 이러한 실행 경로는 더욱 단순하게 구현될 수 있고 고안의 복잡도는 더욱 감소될 수 있는 이점이 있다. 특히 상기 다른 하나의 실행 경로가 빈번하게 요구되는 하나의 특정 기능만을 실행할 수 있다면, 이는 통신 프로토콜을 처리하는 동안 예를 들어 데이터 블록의 이동, 즉, 데이터 전송이 될 수 있다는 이점이 있다.
데이터 블록을 이동, 즉 로드 또는 저장하기 위하여 프로세서 시스템의 명령어 세트는 프로그램 가능한 옵셋값(offset value)이 대응하는 "블록 이동(block move)" 명령어로 동시에 기설정되는 방식으로 유익하게 확장될 수 있다. 그 결과 데이터 블록이 예를 들어 출력포트에 기록되거나 입력포트로부터 판독된다. 이 경우 특히 비트옵셋(bitoffset)은 옵셋값으로 사용될 수 있다.
상이한 전송률을 가지는 데이터버스를 이용함으로서 덜 빈번하게 요구되는또는 더 시간이 걸리는 기능은 데이터버스에서 더 낮은 전송률로 실행될 수 있고, 반면, 예를 들어 특히 데이터 전송과 같이, 빈번하게 요구되는 기능 또는 신속하게 처리돼야 할 기능은 데이터버스에서 높은 전송률로 실행될 수 있다. 따라서 본 발명에 따른 이 실시예는 종래의 방법과 상이하며, 단일 프로세서 장치와 결합하는 개별적인 데이터버스의 사용 또는 두 개의 분리된 프로세서 장치와 결합하는 두 개의 분리된 데이터버스의 사용을 제안한다.
통신 제어기의 경우에 소위 페이로드(payload) 데이터는 충분한 대역폭(bandwidth)이 제공되는 높은 전송률을 가지는 데이터버스 상에서 이러한 방식으로 신속하게 전송될 수 있다. 반면, 프로토콜-헤더 데이터는 더 느린 전송률을 가지는 데이터버스에 의하여 처리된다.
본 발명에 따른 프로세서 시스템의 상기 구조로부터 나타나는 본 발명의 또 다른 이점은 각 실행 경로 및 각 데이터버스에 대해 상이한 에너지 절약 모드를 구현할 수 있다는 것뿐 아니라 특히 프로세서 시스템의 개별적인 데이터버스에 대하여 상이한 대역폭을 사용하고 포트, 레지스터(register) 및 RAM 데이터 메모리에 대해 상이한 메모리 계층 구조를 사용한다는 것이다.
도 1에 나타낸 바와 같이, 예를 들어 통신 전송기의 통신 제어기로 기능하는 처리 장치(CPU)(1)는 프로세서 시스템의 프로그램 메모리(8)로부터 명령어를 판독하고 복호화하는 경로를 포함한다. 이는 기능 블록(2 및 3)의 형태로 도 1에 도시된다.
프로토콜과 통신 데이터를 처리하는 동안 실행될 데이터 전송을 최적화하기 위하여, 명령어들은 병렬로 실행될 수 있으며, 병렬 관계는 오직 기능 블록(2 및 3) 뒤에 또한 병렬로 동작 가능한 몇몇 실행 장치(5 및 7)의 결과로 나타난다. 특히 도 1에 나타낸 실시예에서는 두 개의 병렬 실행 장치(5, 7)가 다양한 명령어 또는 프로그램 시퀀스를 독립적으로 처리하기 위해 제공된다. 버퍼 메모리 또는 레지스터(4 또는 6)는 복호화 단계(3) 다음의 각 실행 장치에 접속되어 있다. 이러한 버퍼 메모리(4, 6)는 각 경우 정보를 저장하는 기능을 하며, 이어지는 실행 장치(5 또는 7)는 명령어 수행을 위하여 저장된 정보를 요구한다.
따라서, 도 1에 도시된 구조에 따르면, 병렬로 작동 가능한 모든 실행장치(5, 7)에 의해 공통으로 사용되는 경로(2, 3)만이 명령어를 수집하거나 또는 판독하고 복호화하기 위해 요구되어 구현 및 프로그래밍은 더욱 간단해진다.
실행 장치(5 및 7)는 상이하게 설계되거나 구성되는 것이 유리하다. 이 실행 장치 중 하나는 설계의 복잡도를 줄이기 위해 가능한 한 단순하게 구성된다. 따라서, 제한된 수의 기능 또는 명령어만이 수행될 수 있다. 반면에, 적어도 다른 하나의 실행 장치는 원하는 한 일반적인 것으로 유지될 수 있으며 특히 모든 가능한 기능 또는 명령어를 실행할 수 있다. 예시된 실시예에 있어서, 실행 장치(7)는 심지어 하나의 특정 명령어, 바람직하게는 데이터블록을 전송하는 명령어만을 실행하도록 단순화된다. 반면, 실행 장치(5)는 프로세서 시스템의 전체 명령어 세트를 실행할 수 있다. 이러한 방식으로 버퍼(6) 및 실행 장치(7)의 구조는 버퍼(4) 및 실행 장치(5)의 구조에 비해 단순화될 수 있다.
앞서 언급된 대로 버퍼(4 및 6)는 각각 특정 실행 경로에서 수행될 명령어를 실행하기 위해 필요한 정보를 임시 저장하는 기능을 한다. 여러 사이클(cycle) 동안 지속되는 명령어들이 실행될 때(예를 들어, 데이터 블록 이동 명령어의 경우), 기능 블록(2 및 3)을 가지는 경로가 다른 명령어를 병렬 실행할 수 있도록 각각의 경우 필요한 정보가 버퍼(4 또는 6)에 저장된다. 실행 장치(7)가 데이터블록을 전송하는 명령어를 실행하는 기능만을 수행하는 경우에는, 이하 상세하게 설명되는(예를 들어 비트 옵셋 정보) 발생 가능한 후속 옵셋 정보뿐 아니라 로딩 및 저장 명령어 사이를 구분하는 비트, 데이터 소스(source) 또는 데이터 싱크(sink)의 주소, 전송될 데이터 요소의 수(예를 들어 바이트(bytes))는 대응하는 버퍼(6)에 저장되어야 한다.
실행 장치(7)가 데이터 전송을 실행하기 위해 활성화된 경우, 실행 장치(5)의 실행 경로는 후속 프로그램 시퀀스("태스크")와 병렬로 접속될 수 있다. 또한 "콘텍스트(context)"로 기술되는 특정 프로그램 시퀀스의 구조적 공간을 형성하는 시퀀스 자체의 상태 변수(state variables)는 각 프로그램 시퀀스와 연결된다. 예를 들어 특정 상태 변수(0 비트, 캐리(carry) 비트, 어드레스 포인터(address pointers) 등)를 저장하는 프로그램 카운터(counters) 및 레지스터와 같은 별개의 하드웨어가 각각의 활성화된 프로그램 시퀀스를 위해 제공되어야 하므로, 하나의 프로그램 시퀀스가 다른 프로그램 시퀀스로 변환될 때, 각 경우 존재하는 하드웨어는 대응하는 상태 변수로 전환되고 콘텍스트는 사이클의 손실 없이 변환될 수 있다.
소위 멀티태스킹(multitasking) 또는 병렬 작동(parallel operation)을 위하여, 특히 프로그램 시퀀스를 시작하고 멈추며, 프로그램 시퀀스에 특정 우선 순위를 제공하거나, 프로그램 시퀀스 동기화(synchronization)에 관한 신호를 대기하는 명령어를 포함하는 명령어 세트가 필요하다. 실행 장치(5)가 실행할 후속 명령어를 갖고 있지 않으면, 상태 변수에 대해 대응하는 레지스터뿐 아니라 기능 블록(2)으로부터 기능 블록(5)까지의 전체 경로는 스위칭 오프(switched off)되는데, 이는 또한 클록(clock)을 스위칭 오프하는 명시적 명령어로부터 발생 가능하다.
두 개의 실행 장치(5, 7)의 각각이 상이한 프로그램 시퀀스와 접속되므로, 프로세서 시스템의 ALU(Algorithmic Logical Unit), 레지스터, RAM 메모리 및 데이터 버스 등의 사이의 통신은 단순화된다. 실행 장치(7)에서의 프로그램 시퀀스의 데이터가 실행 장치(5)에 의해 처리되는, 다른 프로그램 시퀀스에 병렬로 전송 가능하기 때문에, DMA(Direct Memory Access) 기반 프로세서 시스템과 달리 데이터 전송 명령어가 인터럽팅(interrupted) 되었어야 하는 경우 소프트웨어 내에서 더 나은 제어가 또한 이루어질 수 있다. 또한 DMA 제어기를 관리할 필요가 없어, 프로그램 코드와 전력 요구를 감소할 수 있다. 또한 레지스터 또는 버퍼(4, 6)가 여러 번 사용될 수 있으며 DMA 제어기에 추가적인 레지스터가 필요하지 않기 때문에, 하드웨어 비용이 최소화된다.
앞서 언급된 바와 같이, 실행 장치(7)는 바람직하게는 데이터블록 이동 명령어를 실행하는 기능만을 한다. 반면, 실행 장치(5)는 가능한 한 일반적으로 설계되므로, 모든 가능한 기능 또는 명령어가 실행될 수 있다. 따라서, 통신 데이터를 처리하는 동안 실행 장치(7)가 사용되어 데이터 전송을 실행할 수 있다. 반면, 실행 장치(7)에 병렬인 실행 장치(5)는 프로토콜 처리의 나머지 부분을 수행한다. 데이터 전송이 프로토콜 처리와 비교하여 상대적으로 신속하게 이루어져야 하므로, 상대적으로 높은 전송률을 가지는 데이터버스에 실행 장치(7)를 접속시키는 것이 유리하다. 이는 도 2를 참조함으로서 더욱 명백해진다.
중앙 처리 장치(1)는 프로세서 시스템 내에서 두 개의 데이터버스(9 및 10)에 접속되는데, 데이터버스(9)는 데이터버스(10)보다 높은 전송률을 가진다. 처리 장치(1)는 그 실행 장치(7)를 포함하는 데이터버스(9)에만 접근할 수 있다. 반면, 일반적으로 설계된 실행 장치(5)는 데이터버스(5, 7) 모두를 사용할 수 있다. 고속 데이터 전송을 구현하기 위하여, 특히 실제 통신 정보를 구성하는 통신 프로토콜의 소위 페이로드(payload) 데이터를 전송하기 위하여, 버퍼 또는 레지스터(12)뿐 아니라 입력 및 출력포트(11)는 고속의 데이터버스(9)에 접속된다. 포트(11)는 더 복잡한 특수 레지스터로 설계되어 데이터를 송수신하는 대응하는 통신 전송기의 트랜시버(14)에 인터페이스로써 기능 한다. 트랜시버는 또한 변조기(modulator)로 기술된다. 인터럽트(interrupt) 제어기(16)는 특히 포트(11)에 의하여 발생되는 인터럽트 신호를 평가하고, 기설정된 인터럽트 처리에 의한 신호의 평가 결과에 따라, 중앙 처리 장치(1)를 작동시킨다. 버퍼(12)는 특정 호스트 시스템(15)(특정 통신 전송기, 라우터 또는 게이트웨이)에 인터페이스를 형성한다. 호스트 시스템은 전송되거나 수신될 비트스트림을 버퍼(12)에 기록하거나 버퍼(12)로부터 판독한다. 예를 들어 RAM 메모리로서 설계된 버퍼(12)는 프로세서 장치(1)에 의해 구성 가능한 DMA 제어기를 통하여 제어될 수 있기 때문에, 버퍼(12) 및 호스트 시스템(15) 간의 데이터 전송은 프로세서 장치(1)에 큰 부담을 주지 않는다. 반면, 저속의 데이터버스(10)는 프로세서 시스템의 실제 데이터 메모리(13)와 연결된다. 데이터 메모리(13)는 RAM 대용량 메모리(RAM mass memory)의 형태로 설계되고 바람직하게는 통신 프로토콜의 제어 데이터 및 헤더 정보를 임시 저장하는 기능을 한다.
이러한 방식으로, 통신 프로토콜을 처리하여 소위 페이로드 데이터를 전송하기 위해 제공되는 구성요소(11, 12)는 프로토콜 헤더 데이터를 처리하기 위해 제공되는 부분과 분리되고, 고속의 데이터버스(9)뿐 아니라 실행 장치(7)가 사용되어페이로드 데이터는 신속하게 전송될 수 있다. 한편, 특정 통신 프로토콜의 헤더 데이터는 이들과 병렬인 저속의 데이터버스(10)(및 실행 장치(5))를 통하여 처리될 수 있다.
직렬 데이터 입력 및 병렬 데이터 출력을 포함하는 포트(11)에 제공되는 신호는 도 3a에 나타낸다. 포트(11)는 직렬 입력 데이터(D_IN)를 수신하는데, 이는 클록 신호(CLK)에 따라 포트(11)에 기록된다. 또한 포트(11)는 기록될 데이터의 비트 위치를 기술하는 3 비트의 제어 정보(BP) 및 기록될 비트 필드(field)의 폭(width) 및 길이(length)를 기술하는 다른 3 비트의 제어 정보(BW)를 수신한다. 이러한 방식으로 포트(11)의 제 1 비트 위치와 관련된 길이(BP)의 비트옵셋을 갖는 길이(BW)의 데이터 블록은 포트(11)에 기록된다. 리셋 신호(RESET)가 다른 제어 신호로서 포트(11)에 제공된다. 출력 측에는 n 비트를 가지는 데이터가 병렬로 판독된다. 데이터의 판독은 후속 제어 신호(D_READ)를 통해 이루어진다. 또한 인터럽트 신호(D_READY)가 제공되어, 데이터가 포트(11)에 저장되는 경우 인터럽트를 발생시킨다.
병렬 데이터 입력 및 직렬 데이터 출력을 포함하는 포트(11)에 제공되는 신호는 도 3b에 나타낸다. 이 포트는 n 비트가 입력 측에서 병렬로 판독되고 출력 데이터는 직렬로 출력된다는 점에서 도 3a에 도시된 포트와 구별된다.
마지막으로 버퍼 또는 레지스터(12)에 공급되는 신호가 또한 도 3c에 도시되어 있다. 바이트의 형태인 데이터 요소(elements)는 바람직하게는 버퍼(12)에 기록되고 버퍼로부터 판독된다. 또한 주소 신호(ADR)가 정의되어, 각 경우에 접근해야 하는 버퍼(12)의 주소를 기술한다.
Claims (14)
- 프로그램 메모리(8)에 파일링된 명령어를 실행하기 위한 처리 장치(1)를 포함하며, 상기 처리 장치(1)는 상기 프로그램 메모리(8)로부터 명령어를 판독하는 명령어 판독 수단(2), 상기 명령어를 복호화하는 명령어 복호화 수단(3) 및 상기 명령어를 실행하는 명령어 실행 수단(4-7)을 구비하는 프로세서 시스템에 있어서,상기 명령어 실행 수단(4-7)은 다양한 명령어를 병렬 실행하기 위한 병렬 작동 가능한 복수의 실행 장치(5, 7)를 포함하고,상기 명령어 판독 수단 및 상기 명령어 복호화 수단(3)은 모든 실행 장치(5, 7)에 공통으로 제공되는 것을 특징으로 하는프로세서 시스템.
- 제 1 항에 있어서,상기 특정 실행 장치(5, 7)에 의해 수행될 상기 명령어를 실행하는데 필요한 정보를 저장하는 임시 저장 수단(4, 6)은 각 실행 장치(5, 7)와 연관되는 것을 특징으로 하는프로세서 시스템.
- 제 1 항 또는 제 2 항에 있어서,상기 명령어 실행 수단(4-7)의 제 1 실행 장치(5)는 상기 프로세서 시스템의 가능한 모든 명령어를 실행하도록 설계되고,상기 명령어 실행 수단(4-7)의 제 2 실행 장치(7)는 단지 소수의 특수 명령어를 실행하도록 설계되는 것을 특징으로 하는프로세서 시스템.
- 제 3 항에 있어서,상기 제 2 실행 장치(7)는 빈번하게 사용되는 몇 개의 명령어를 실행하도록 설계되는 것을 특징으로 하는프로세서 시스템.
- 제 3 항 또는 제 4 항에 있어서,상기 제 2 실행 장치(7)는 단지 하나의 특수 명령어만을 실행하도록 설계되는 것을 특징으로 하는프로세서 시스템.
- 제 5 항에 있어서,상기 제 2 실행 장치(7)는 데이터블록을 이동하는 명령어만을 실행하기 위해 설계되는 것을 특징으로 하는프로세서 시스템.
- 제 2 항 및 제 6 항에 있어서,상기 제 2 실행 장치(7)에 연결된 상기 임시 저장 수단(6)에 저장되는 상기 정보는 저장 또는 로딩될 상기 데이터블록의 저장 또는 로딩 주소, 이동될 상기 데이터블록의 데이터 요소의 양, 상기 데이터블록이 저장되거나 판독되어야 하는데 사용되는 옵셋(offset)값, 및/또는 수행될 상기 명령어가 저장 또는 판독 명령어와 관련되는지를 특정하는 제어 데이터를 포함하는 것을 특징으로 하는프로세서 시스템.
- 제 3 항 내지 제 7 항 중의 어느 한 항에 있어서,명령어가 상기 제 1 실행 장치(5)에 의하여 잠시 실행되지 않아야 한다면, 상기 제 1 실행 장치(5)에 이르는 상기 경로가 상기 명령어 복호화 수단(3)을 거쳐 상기 명령어 판독 수단(2)에 의하여 임시로 비활성화되는 방식으로 상기 처리 장치(1)가 설계되는 것을 특징으로 하는프로세서 시스템.
- 상기 항 중 어느 한 항에 있어서,상기 명령어 실행 수단(4-7)의 실행 장치(5)는 제 1 데이터버스(databus)(10)에 접속되고 제 2 실행 장치(5)는 제 2 데이터버스(9)에 접속되며,상기 제 1 데이터버스(10)의 전송률은 상기 제 2 데이터버스(9)의 전송률보다 낮은 것을 특징으로 하는프로세서 시스템.
- 제 9 항에 있어서,상기 프로세서 시스템(8)은 통신 프로토콜을 처리하기 위해 제공되고,상기 제 1 데이터버스(10)는 상기 통신 프로토콜의 헤더(header) 데이터를 처리하기 위해 제공되는 반면, 상기 제 2 데이터버스(11)는 페이로드(payload) 데이터의 신속한 전송을 위해 제공되는 것을 특징으로 하는프로세서 시스템.
- 제 9 항 또는 제 10 항에 있어서,상기 프로세서 시스템의 데이터 메모리(13)는 상기 제 1 데이터버스(10)에 접속되고,적어도 하나의 입력 및/또는 출력포트(11) 및/또는 적어도 하나의 레지스터 또는 버퍼(12)는 상기 제 2 데이터버스(9)에 접속되는 것을 특징으로 하는프로세서 시스템.
- 제 10 항 및 제 11 항에 있어서,상기 제 2 데이터버스(9)에 접속되는 상기 입력 및/또는 출력포트는 통신 전송기의 전송기 및/또는 수신기 장치(14)에 접속되고,상기 제 2 데이터버스(9)에 접속되는 상기 레지스터 또는 버퍼(12)는 상기 통신 전송기에 의하여 전송되거나 수신될 비트스트림(bitstream)의 임시 저장을 위해 제공되는 것을 특징으로 하는프로세서 시스템.
- 제 9 항 내지 제 12 항 중 어느 한 항 및 제 3 항 내지 제 8 항 중 어느 한 항에 있어서,상기 제 1 데이터버스(10)에 접속된 상기 명령어 실행 수단(4-7)의 상기 실행 장치는 상기 제 1 실행 장치(5)에 대응하고, 상기 제 2 데이터버스(9)에 접속된 상기 실행 장치는 상기 제 2 실행 장치(7)에 대응하는 것을 특징으로 하는프로세서 시스템.
- 제 13 항에 있어서,상기 제 1 실행 장치(5)는 또한 상기 제 2 데이터버스(9)에 접속되어, 상기 제 2 데이터버스(9)에 또한 접근할 수 있는 반면, 상기 제 2 실행 장치(7)는 상기 제 2 데이터버스(9)에만 접속되는 것을 특징으로 하는프로세서 시스템.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19948099.0 | 1999-10-06 | ||
DE19948099A DE19948099A1 (de) | 1999-10-06 | 1999-10-06 | Prozessorsystem, insbesondere ein Prozessorsystem für Kommunikationseinrichtungen |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20020035628A true KR20020035628A (ko) | 2002-05-11 |
KR100471516B1 KR100471516B1 (ko) | 2005-03-10 |
Family
ID=7924660
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2002-7004290A KR100471516B1 (ko) | 1999-10-06 | 2000-10-05 | 프로세서 시스템 |
Country Status (6)
Country | Link |
---|---|
US (1) | US7185184B1 (ko) |
EP (1) | EP1224540B1 (ko) |
JP (1) | JP3651672B2 (ko) |
KR (1) | KR100471516B1 (ko) |
DE (2) | DE19948099A1 (ko) |
WO (1) | WO2001025902A1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW561740B (en) * | 2002-06-06 | 2003-11-11 | Via Tech Inc | Network connecting device and data packet transferring method |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE397013B (sv) * | 1976-12-17 | 1977-10-10 | Ellemtel Utvecklings Ab | Sett och anordning for att overfora datainformationer till tva parallellt arbetande datamaskindelar |
US5027317A (en) * | 1989-03-17 | 1991-06-25 | Allen-Bradley Company, Inc. | Method and circuit for limiting access to a RAM program memory |
US5179530A (en) | 1989-11-03 | 1993-01-12 | Zoran Corporation | Architecture for integrated concurrent vector signal processor |
US5146558A (en) * | 1990-01-19 | 1992-09-08 | Canon Kabushiki Kaisha | Data processing system and apparatus |
JPH0520062A (ja) | 1991-07-09 | 1993-01-29 | Fuji Xerox Co Ltd | データ処理装置 |
US5363495A (en) | 1991-08-26 | 1994-11-08 | International Business Machines Corporation | Data processing system with multiple execution units capable of executing instructions out of sequence |
EP0606299B1 (en) * | 1991-10-04 | 2003-09-10 | Bay Networks, Inc. | Method and apparatus for concurrent packet bus |
JPH07502358A (ja) * | 1991-12-23 | 1995-03-09 | インテル・コーポレーション | マイクロプロセッサーのクロックに依るマルチプル・アクセスのためのインターリーブ・キャッシュ |
US5452401A (en) | 1992-03-31 | 1995-09-19 | Seiko Epson Corporation | Selective power-down for high performance CPU/system |
US5392437A (en) * | 1992-11-06 | 1995-02-21 | Intel Corporation | Method and apparatus for independently stopping and restarting functional units |
US5598362A (en) * | 1994-12-22 | 1997-01-28 | Motorola Inc. | Apparatus and method for performing both 24 bit and 16 bit arithmetic |
US5841771A (en) * | 1995-07-07 | 1998-11-24 | Northern Telecom Limited | Telecommunications switch apparatus and method for time switching |
US6167503A (en) * | 1995-10-06 | 2000-12-26 | Compaq Computer Corporation | Register and instruction controller for superscalar processor |
US5954811A (en) | 1996-01-25 | 1999-09-21 | Analog Devices, Inc. | Digital signal processor architecture |
US5732251A (en) * | 1996-05-06 | 1998-03-24 | Advanced Micro Devices | DSP with register file and multi-function instruction sequencer for vector processing by MACU |
-
1999
- 1999-10-06 DE DE19948099A patent/DE19948099A1/de not_active Withdrawn
-
2000
- 2000-10-05 JP JP2001528795A patent/JP3651672B2/ja not_active Expired - Fee Related
- 2000-10-05 US US10/089,907 patent/US7185184B1/en not_active Expired - Fee Related
- 2000-10-05 KR KR10-2002-7004290A patent/KR100471516B1/ko not_active IP Right Cessation
- 2000-10-05 EP EP00966119A patent/EP1224540B1/de not_active Expired - Lifetime
- 2000-10-05 DE DE50002014T patent/DE50002014D1/de not_active Expired - Lifetime
- 2000-10-05 WO PCT/EP2000/009741 patent/WO2001025902A1/de active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
JP3651672B2 (ja) | 2005-05-25 |
DE50002014D1 (de) | 2003-06-05 |
DE19948099A1 (de) | 2001-04-19 |
US7185184B1 (en) | 2007-02-27 |
JP2003511753A (ja) | 2003-03-25 |
EP1224540B1 (de) | 2003-05-02 |
EP1224540A1 (de) | 2002-07-24 |
KR100471516B1 (ko) | 2005-03-10 |
WO2001025902A1 (de) | 2001-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5299313A (en) | Network interface with host independent buffer management | |
KR0161101B1 (ko) | 호스트 인터럽트 및 지시운용을 가지는 네트워크 어댑터 | |
EP0993680B1 (en) | Method and apparatus in a packet routing switch for controlling access at different data rates to a shared memory | |
EP0991999B1 (en) | Method and apparatus for arbitrating access to a shared memory by network ports operating at different data rates | |
KR101077900B1 (ko) | 네트워크 효율성을 고려한 SoC 기반 시스템 네트워크에서의 인터페이스 장치의 통신방법 및 그에 의해 통신하는 인터페이스 장치 | |
US6549960B1 (en) | Architecture and apparatus for implementing 100 MBPS and GBPS ethernet address | |
EP1675014B1 (en) | Data stream processor and information processing apparatus | |
US6526462B1 (en) | Programmable multi-tasking memory management system | |
US5961626A (en) | Method and processing interface for transferring data between host systems and a packetized processing system | |
US6792488B2 (en) | Communication between processors | |
US20040151170A1 (en) | Management of received data within host device using linked lists | |
AU4930093A (en) | A device with host indication combination | |
WO1994002891A1 (en) | Apparatus for automatic initiation of data transmission | |
US20020184453A1 (en) | Data bus system including posted reads and writes | |
US6581113B1 (en) | Apparatus and method for transferring frame data between a host system memory and a network interface buffer memory employing transmit descriptors without transmit status information | |
CN112866148B (zh) | 一种面向类脑计算芯片的芯片间数据传输系统及实现方法 | |
KR20120040535A (ko) | 버스 시스템 및 그것의 동작 방법 | |
JP2539058B2 (ja) | デ―タプロセッサ | |
JP2003050788A (ja) | 高レベル・データ・リンク・コントローラから多数個のディジタル信号プロセッサ・コアに信号を分配するための装置と方法 | |
KR101197294B1 (ko) | QoS 및 전송 효율 개선을 위한 SoC 기반 시스템 네트워크에서의 인터페이스 장치의 통신방법 | |
KR100471516B1 (ko) | 프로세서 시스템 | |
CN109145397A (zh) | 一种支持并行流水访问的外存仲裁结构 | |
US20040162924A1 (en) | Apparatus and method for transmitting data by means of direct memory access medium | |
CN102223285B (zh) | 处理数据报文的方法及网络节点 | |
US6763405B2 (en) | Process for interfacing a microprocessor with a packet based device and respective system |
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: 20130131 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20140124 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20150123 Year of fee payment: 11 |
|
LAPS | Lapse due to unpaid annual fee |