문맥 (context)
[청구항 1]
고정 혹은 가변 길이 데이타 패킷(data packets of fixed or variable length)을 수신(138) 및 송신기(137)하기 위한 프로그램 가능한 처리 수단(programmable processing means)(spp)을 포함하는, 통신 네크워크(200)내의 패킷 스위칭 노드(packet switching node)(300)의 라인 어댑터(401,402)에 있어서
상기 라인 어댑터는 : 상기 데이타 패킷을 버퍼링(132)하는 수단과
상기 버퍼링 수단내에서 상기 데이타 패킷을 식별하는 수단과
단일 인스트럭션(single instruction)으로 상기 식별 수단을 저장 수단(131)에 큐잉(queueing)하는 단계(제15도)과
또다른 단일 인스트럭션으로 상기 저장(131) 수단으로부터 상기 식별 수단을 디큐잉(dequeueing)하는 수단(제16도)과
상기 버퍼링 수단을 해체(relrase)하는 수단을 포함하되, 각각의 상기 큐잉과 디큐잉 인스트럭션은
상기 식별 수단상에서의 산술 및 논리(alu) 연산과; 상기 저장 수단상에서의 메모리 연산과; 시퀸스 연산(sequence operation)의 상기 처리 수단에 의해 병렬로 실행되어지는 최대 3개의 연산을 포함하는 것을 특정으로 하는 프로그램 가능한 라인 어댑터
[청구항 2]
제1항에 있어서,상기 버퍼링 수단은 직접 메모리 액세스 모들(direct memory access module)(134)의 제어하에, 고정 길이의 버퍼(buffer)(800)내에서 상기 데이타 패킷을 기록 및 판독하는 수단을 구비하며; 상기 저장 수단은 상기 처리수단(spp)의 제어하에, 상기 식별 수단을 분리해서 저장(131)하는 수단을 구비하는 프로그램가능한라인 어댑터.
[청구항 3]
제2항에 있어서,상기 식별 수단은 : 상기 버퍼를 식별하며 하나 또는 그 이상의 버퍼 리스트(buffer lists)(b_list)에서 스택(stack)되는 버퍼 포인터(buffer pointers)(b_ptr)와; 상기 버퍼 리스트(b_list)를 식별하여 하나 또는 그 이상의 패킷 리스트(packet lists)(p_list)에서 스택되는 패킷 포인터(p_ptr)와; 상기 패킷 리스트(p_list)를 식별하여 하나 또는 그 이상의 큐 리스트(queue lists)(q_list)에서 스택되는 큐 포인터(q_ptr)을 구비하며, 각각의 리스트는, 상기 리스트가 포함하는 데이타와 관련이 있는 어떤 유형의 정보(any type of information)를 저장하는 접두부(prefix)를 포함하는 프로그램가능한라인 어댑터.
[청구항 4]
제3항에 있어서,상기 버퍼 리스트 접두부는 데이타 패킷 헤더(data packet header)내에 포함된 제어와 라우팅 정보(control and routing information)를 포함하는 프로그램가능한라인 어댑터.
[청구항 5]
제3항에 있어서,상기 패킷 포인터와 상기 큐 포인터의 각각의 리스트 포인터는 : 포인터 리스트를 식별하는 제1필드(lid)와; 상기 포인터 리스트에 부착할 다음 포인터(tail)를 식별하는 제2필드와; 상기 포인터 리스트 내에서 제1포인터(head)를 식별하는 제3필드를 포함하는 프로그램가능한라인 어댑터.
[청구항 6]
제3항에 있어서,버퍼 포인터는 : 버퍼를 식별하는 제1필드(bid)와, 상기 버퍼에서 제1데이타 요소를 식별하는 제2필드(fep)와, 상기 버퍼에서 마지막 데이타 요소를 식별하는 제3필드(lep)와, 상기 버퍼에서 현재 데이타 요소를 식별하는 제4필드(cep)와, 상태 표시기(status indicator)로 사용되는 제5필드포함하는프로그램가능 라인 어댑터.
[청구항 7]
제6항에 있어서,버퍼 리스트는 고정된 길이를 가지며, 버퍼 포인터는 저장할 데이타 패킷이 단일 버퍼리스트가 수용할 수 있는 것보다 클 때, 다수의 버퍼 리스트내에 스택될 수 있으며, 상기 상태 표시기는 상기 데이타 패킷의 사이한 리스트(different lists) 사이에서 상관관계(crrelation)를 확실히 하기 위해 상기 각 버퍼 리스트의 마지막 버퍼 포인터내에서 플래그(flage)되는 프로그램가능한라인 어댑터.
[청구항 8]
제5항에 있어서,잉 인스트럭션은 : 리스트 포인터의 tail 필드를 증가시키며, 상기 lid 필드에 의해 식별된 포인터 리스트내에서 tail 필드에 의해 식별된 포인터를 동시에 판독하며, 리스트 비어있음(e)과 혹은 리스트 풀(f) 표시기를 발생하는 수단을 포함하는 프로그램가능한라인 어댑터.
[청구항 9]
제5항에 있어서,상기 디큐잉 인스트럭션은 : 리스트 포인터의 head 필드를 증가시키며, 상기 lid 필드에 의해서 식별된 포인터 라스트 내에서 head 필드에 의해서 식별된 포인터를 동시에 판독하며, 리스트 비어있음(e)과 혹은 리스트 풀(f) 표시기를 발생하는 수단을 포함하는 프로그램가능한라인 어댑터.
[청구항 10]
제8항 혹은 제9항에 있어서,상기 인스트럭션은 ; 상기 리스트 비어있음(e) 혹은 리스트 풀(f) 표시기를 테스트(test)하는 수단을 더 포함하는 프로그램가능한라인 어댑터.
[청구항 11]
제3항에 있어서,상기 데이타 패킷 버퍼링 수단의 관리는 상기 버퍼 포인터 전체를 포함하는 영구(permanent) 리스트(프리 버퍼 리스트(free buffer list )에 의해 실현되는 프로그램가능한라인 어댑터.
[청구항 12]
제1항에 있어서,상기 처리 수단은 : 산술 및 논리 장치와, 레지스터 파일(resister file)과, 시퀸서(sequencer)와, 인스트럭션 파일(instruction file)과, 직접 액세스 메모리 모듐과, 물리적 메모리 어드레스 발생기를 구비하는 프로그램가능한라인 어댑터.
지시문 (instruction)
주어진 본문을 읽고 관련 정보를 분석하여 질문에 답하라.
질문 (question)
프로그램 가능한 라인 어댑터에서 큐잉(queueing) 및 디큐잉(dequeueing) 인스트럭션이 수행될 때, 처리 수단(spp)에 의해 병렬로 실행될 수 있는 연산의 종류와 그 최대 개수는 무엇인가?
추론 과정 (compact_reasoning)
-
1과제 해석
task_interpretation프로그램 가능한 라인 어댑터의 큐잉 및 디큐잉 인스트럭션 수행 시, 처리 수단(spp)에 의해 병렬로 실행되는 연산의 종류와 그 최대 개수를 찾는 것이다.
-
2정보 추출
information_extraction청구항 1에서 큐잉 및 디큐잉 인스트럭션이 포함하는 연산의 종류와 병렬 실행되는 최대 개수에 관한 정보를 추출한다.
- 각각의 상기 큐잉과 디큐잉 인스트럭션은 상기 식별 수단상에서의 산술 및 논리(alu) 연산과; 상기 저장 수단상에서의 메모리 연산과; 시퀸스 연산(sequence operation)의 상기 처리 수단에 의해 병렬로 실행되어지는 최대 3개의 연산을 포함하는 것을 특정으로 하는 프로그램 가능한 라인 어댑터
-
3근거 선택
evidence_selection병렬 실행되는 연산의 종류(산술 및 논리 연산, 메모리 연산, 시퀸스 연산)와 최대 개수(3개)가 명시된 구절을 선택한다.
- 상기 식별 수단상에서의 산술 및 논리(alu) 연산과; 상기 저장 수단상에서의 메모리 연산과; 시퀸스 연산(sequence operation)의 상기 처리 수단에 의해 병렬로 실행되어지는 최대 3개의 연산
-
4논리 통합
logical_integration추출된 정보를 결합하여 연산의 종류는 산술 및 논리(alu) 연산, 메모리 연산, 시퀸스 연산이며, 이들의 최대 병렬 실행 개수는 3개임을 도출한다.
-
5결론 도출
conclusion_formulation질문에 대한 직접적인 답변을 구성한다. 연산의 종류는 산술 및 논리(alu) 연산, 메모리 연산, 시퀸스 연산이며 최대 개수는 3개이다.
-
6답변 생성
answer_generation최종 답변을 작성한다.
최종 답변 (final_answer)
연산의 종류는 상기 식별 수단상에서의 산술 및 논리(alu) 연산, 상기 저장 수단상에서의 메모리 연산, 시퀸스 연산(sequence operation)이며, 최대 개수는 3개이다.
핵심 해석 (core_interpretation)
프로그램 가능한 라인 어댑터에서 큐잉 및 디큐잉 인스트럭션 수행 시, 산술/논리 연산, 메모리 연산, 시퀸스 연산을 최대 3개까지 병렬로 처리하여 효율성을 높이는 기술에 관한 것이다.