KR20040030846A - 크기 가변 및 자동 생성을 위한 계층적 멀티플렉서 기반집적회로 상호접속 아키텍처 - Google Patents

크기 가변 및 자동 생성을 위한 계층적 멀티플렉서 기반집적회로 상호접속 아키텍처 Download PDF

Info

Publication number
KR20040030846A
KR20040030846A KR10-2004-7001008A KR20047001008A KR20040030846A KR 20040030846 A KR20040030846 A KR 20040030846A KR 20047001008 A KR20047001008 A KR 20047001008A KR 20040030846 A KR20040030846 A KR 20040030846A
Authority
KR
South Korea
Prior art keywords
hierarchical level
multiplexer
unit
input
units
Prior art date
Application number
KR10-2004-7001008A
Other languages
English (en)
Inventor
데일 왕
존 디. 토비
Original Assignee
레오파드 로직, 인크.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 레오파드 로직, 인크. filed Critical 레오파드 로직, 인크.
Publication of KR20040030846A publication Critical patent/KR20040030846A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17736Structural details of routing resources
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/1733Controllable logic circuits
    • H03K19/1737Controllable logic circuits using multiplexers
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/1778Structural details for adapting physical parameters

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Logic Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Electronic Switches (AREA)

Abstract

본 발명은 계층적, 멀티플렉서 기반 상호접속 아키텍처(도 2)로 구성되며 필드 프로그램가능 게이트 어레이(Field Programmable Gate Arrays), 멀티-프로세서(multi-processors)들, 구성가능한 상호접속 네트워크를 필요로 하는 다른 애플리케이션들(applications)에 적용될 수 있다. 전통적인 패스 트랜지스터(15)또는 게이트 대신에, 멀티플렉서(23)가 사용되며 상호접속 아키텍처는 계층적 상호접속 유닛들(25)에 기반한다. 제한되고 예측가능한 라우팅 딜레이(routing delays), 밀집한 구성 메모리(configuration memory) 필요성, 잡음 있는 환경에서의 비파괴 작동, 자동 생성을 위한 일정한 빌딩 블록(building blocks) 및 커넥션(connections), 상호접속된 소자 수천 개까지의 크기가변(scalability), 그리고 높은 자원 활용 하에서의 높은 라우팅가능성(routability)이 구현될 수 있다.

Description

크기 가변 및 자동 생성을 위한 계층적 멀티플렉서 기반 집적회로 상호접속 아키텍처{HIERARCHICAL MULTIPLEXER-BASED INTEGRATED CIRCUIT INTERCONNECT ARCHITECTURE FOR SCALABILITY AND AUTOMATIC GENERATION}
본 특허출원은 2001년 7월 24일에 출원된 출원번호 60/307,534의 미국 가특허출원(U.S. Provisional Patent Application)을 기초로 우선권 주장을 하며, 상기 우선권 주장의 기초가 된 미국 가출원은 상세한 설명에 의해 완전히 그대로 편입된다.
구성가능한(configurable) 상호접속 네트워크(interconnect network)를 구비하는 집적회로를 필요로 하는 많은 애플리케이션들이 있다. 그러한 애플리케이션의 하나는 하나의 칩(single chip)(또는 스패닝 멀티플 칩(spanning multiple chips))상에서 병렬 컴퓨팅(parallel computing)을 위한 멀티-프로세서(multi-processor) 환경인데, 상기 멀티 프로세서 환경에서 상호접속 네트워크는 프로세서들이 어떻게 스케쥴링되었는(scheduled) 지에 따라 프로세서 상호간에 데이타를 라우팅(route)한다. 또 하나의 애플리케이션은 이른바 시스템 온 칩(System-on-a-chip(SOC))으로서, 상기 SOC에서 집적회로의 프로세서들, 메모리들, 및 주변 소자(peripheral elements)들 사이의 커넥션(connection)이 구동되는 프로그램(program)의 요구에 따라 변화될 수 있다. 또 다른 하나의 애플리케이션은 분리된 칩(discrete chip) 또는 SOC상의 코어(core)로서의 필드 프로그램가능 게이트 어레이(Field Programmable Gate Array)(FPGA)로서, 상기 FPGA에서는 FPGA의 설계에 따라 복잡도(complexity)가 변화하는 상호접속된 소자들은 로직 게이트이다.
현재로서, SRAM(Static Random Access Memory)에 기반한 FPGA(SRAM-based FPGA) 제품들이 이러한 애플리케이션을 위하여 자주 사용된다. SRAM 셀은 상호접속 네트워크의 목적하는 구성(configuration)을 세팅(set)하기 위하여 구성 비트(configuration bit)를 유지하도록 사용된다. 상호접속 네트워크 아키텍처(architecture)의 일반적인 예는 도 1A에 도시된 셀 유닛(unit)에 의해 예시된다. 이러한 기본 배열 구조(array structure)는 다양한 크기의 FPGAs를 위한 메시(mesh) 아키텍처 형성하기 위해 집적회로를 가로지른 두 방향으로 반복된다. 이러한 배열 구조에서, 스위치 셀(switch cells)(10)과 상기 스위치 셀에 인접하는 네 가지 스위치 셀(10) 사이의 커넥션이 동, 서, 남, 북의 방향으로 이루어진다. 스위치 셀(10)들, 커넥션 셀(11)들, 및 그들의 모든 와이어들(wires)(즉, 집적 회로의 컨덕팅 라인(conducting lines)), 그리고 커넥션들이 로직 셀(12)(logic cell)들을 위한 상호접속 네트워크를 구성하는데, 상기 로직 셀은 로직게이트(logic gate)들에 의해 형성된다. 로직 셀(12)들은 실제 회로 로직을 구현하기 위해 사용되며, 커넥션 셀(11)들은 로직 셀(12)이 상호접속 네트워크에 연결되도록 구성되며, 스위치 셀(10)들은 목적하는 상호접속 네트워크가 구현되도록 구성된다.
이러한 전통적인 메시 아키텍처는 1991년 3월 발간된IEEE Journal of Solid-State Circuitsvol.26, no.3에 수록된 J.Rose 및 S. Brown 저 "필드 프로그램가능 게이트 어레이를 위한 상호접속 구조의 유연성(Flexibility of Interconnection Structures for Field Programmable Gate Arrays)" 논문 및 캘리포니아주 산호세(san Jose)에 소재한 자이링스사(Xilinx Corporation)로부터의Virtex-E 1.8V Field Programmable Gate Arrays자료표(data sheet)에서 매우 상세히 기술되어진다. 당업계의 이러한 FPGA 아키텍처의 현재의 사용은 자이링스사의 웹페이지, http://www.xilinx.com/partinof/ds022.pdf에서 기술되고 있다.
이러한 전통적인 아키텍처의 유연성(flexibility)은 커넥션 셀(11)과 스위치 셀(10)내에 있다. 이러한 상기 셀 (10) 및 (11)에서 컨덕팅 와이어들 사이에 커넥션을 만들기 위하여, FPGA 상호 접속 네트워크 내의 각각의 가능한 커넥션은, 도 1B의 예시적인 상호접속 네트워크에 의해 도시되는 바와 같이, 그 자신의 패스 트랜지스터(pass transistor) 및 메모리 셀 안에 저장되는 제어 구성 비트(controlling configuration bit)(config bit)를 가진다. 네 가닥 수직 와이어(16)들이 와이어 대 와이어의 커넥션으로서 구성될 수 있는 각각의 교차점(intersection)에서 두 가닥의 수평 와이어(17)들에 의해 교차되며 구성 비트에 의하여 제어되는 패스 트랜지스터(15)가 존재한다. 상기 예에서는, 8개의 패스 트랜지스터(15) 및 8개의 구성 비트가 있다. 또는, 패스 트랜지스터(15) 대신 패스 게이트가 사용될 수 있다.
그러나, 이러한 전통적인 구성가능한 상호접속 아키텍처 및 네트워크는 문제점들 및 단점들을 가진다. 각각의 패스 트랜지스터 또는 패스 게이트는 구성 비트를 필요로 하는데, 상기 구성 비트는 메모리 셀을 필요로 한다. 상호 접속 네트워크가 확장됨에 따라, 구성 비트를 위한 메모리 셀은 집적회로 상의 보다 많은 영역을 차지하게 된다. 둘째로, 전통적인 상호 접속 네트워크는 하나 이상의 와이어가 일정한 와이어(a given wire)를 작동시키기 위하여 구성 비트가 부적당하게(improperly) 세팅되는 경우 전기 단락으로 접지될(electrical shorts to ground) 가능성을 가지고 있다. 작동되는 와이어 중 하나에 파워가 공급되고 다른 와이어가 접지된 경우에는 작동된 와이어가 파괴될 수 있다. 이러한 파괴의 가능성은 실리콘 제조 프로세스가 보다 작은 기하구조(smaller geometries)로 바뀌면서 증가된다. 보다 작은 기하구조는 보다 작은 잡음 면역(noise immunity)을 야기하며, 자동차용 애플리케이션(automotive applications)과 같은 잡음있는 작동 환경에서 구성 비트는 상태를 바꾸거나 비극적인 단락을 생성할 수 있다. 예측 불가능한 시간 지연(timing delays)은 축소된 기하구조에 의하여 악화되는 또 하나의 문제점이다. 전통적인 상호 접속 네트워크는 어떤 와이어에 대해서도 매우 다양한 로딩을 가지고 있는데, 상기 로딩은 상호 접속 네트워크가 얼마나 많은 와이어들로 펼쳐져 나가는가(fan out)와 메시 커넥션을 통해 얼마나 멀리 만들어지는가에 좌우된다. 기하구조가 축소됨에 따라, 이러한 상기 문제점들은 설계를 위한 타이밍 클로저(timing closure)를 달성하는데 있어 주요한 이슈(issue)가 된다. 또 다른 문제점은 최악의 경우의 지연(worst case delays)이다. 전통적인 메시 네트워크에서, 가장 긴 경로는 상호 접속 아키텍처들 내의 셀 유닛의 개수인 N의 제곱근에 비례한다. 예를 들면, FPGA에서 4K 코어 셀의 정사각형 배열에서, 메시에서의 가장 긴 경로는 128이다. 따라서 상호 접속이 커짐에 따라 타이밍(timing)은 보다 큰 문제가 된다. 마지막으로, 전통적인 상호 접속 네트워크는 용이하게 크기가 조절될 수 없다. 상호 접속 네트워크가 커짐에 따라, 메시 아키텍처는 증가된 상호 접속의 요구를 수용하기 위하여 모든 스위치 셀을 확장시켜야 한다.
본 발명은 이러한 상기 문제점들의 많은 부분을 완화하거나 회피한다. 본 발명은 아키텍처의 규칙성(architectural regularity)을 제공하고 크기가 조절가능하며 소프트웨어에 의하여 용이하게 생성될 수 있다.
본 발명은 계층적 멀티플렉서 기반 상호접속 아키텍처에 관한 것으로서, 구성가능한 상호접속 네트워크를 요구하는 필드 프로그램가능 게이트 어레이(FPGA), 멀티 프로세서, 및 다른 애플리케이션(application)에 응용될 수 있다.
도 1A는 FPGA의 전형적인 구성가능한 상호 접속 아키텍처를 도시한다.
도 1B는 도 1A의 아키텍처를 위한 예시적인 상호 접속 네트워크를 도시한다.
도 2는 본 발명에 따른, 예시적인 멀티플렉서 기반 상호 접속 네트워크 도시한다.
도 3A는 본 발명의 하나의 실시예에 따른, 계층적 멀티플렉서를 기초로 하는 상호 접속 아키텍처의 최하위 레벨(bottom level)을 도시한다; 도 3B는 도 3A에서 도시된 계층적 레벨의 차상위 계층적 레벨, 또는 패런트(parent)를 도시한다; 도 3C는 도 3B에서 도시되는 계층적 레벨의 차상위 레벨, 또는 패런트를 도시한다.
도 4는 도 3B의 두 계층적 레벨의 입력 및 출력 멀티플렉서를 도시한다; 도 5는 도 4의 멀티플렉서가 어떻게 두 최하위 레벨 유닛들 사이의 커넥션을 만드는지를 도시한다.
도 6A는 최하위 레벨 코어 셀의 출력 멀티플렉서로의 커넥션을 도시한다.; 도 6B는 최하위 레벨 코어 셀의 입력 멀티플렉서를 도시한다.
도 7A는 어느 하나의 패런트 출력 멀티플렉서에 대한 상기 패런트를 형성하는 모든 최하위 레벨 유닛들로부터의 외향(outward), 또는 유출(export) 커넥션을 도시한다; 도 7B는 최하위 레벨 유닛의 어느 하나의 출력 멀티플렉서로부터 상기 패런트 유닛의 출력 멀티플렉서로의 외향, 또는 유출 커넥션들을 도시한다; 도 7C는 도 7B에서 강조된, 최하위 레벨 유닛의 다른 하나의 출력 멀티플렉서로부터 상기 패런트 출력 멀티플렉서로의 외향, 또는 유출 커넥션을 도시한다.
도 8은 패런트 유닛의 출력 멀티플렉서에 대한 16개의 최하위 레벨 유닛 모두의 외향, 또는 유출 커넥션을 도시한다.
도 9A는 어느 하나의 패런트 입력 멀티플렉서로부터 상기 패런트를 형성하는 모든 최하위 레벨 유닛의 입력 멀티플렉서로의 내향(inward), 또는 유입(import) 커넥션들을 도시한다; 도 9B는 최하위 레벨 유닛의 어느 하나의 입력 멀티플렉서에 대한 상기 패런트 유닛의 입력 멀티플렉서로부터의 내향, 또는 유입 커넥션들을 도시한다.
도 10은 16개의 최하위 레벨 코어 셀들 모두에 대한 상기 패런트 유닛의 입력 멀티플렉서로부터의 모든 내향, 또는 유입 커넥션들을 도시한다.
도 11A는 네 개의 코어 셀 중 어느 하나의 코어 셀의 차일드(child)의 입력 멀티플렉서의, 네 개의 코어 셀 중 그 외의 다른 코어 셀들의 차일드들(children)의 출력 멀티플렉서에 대한 크로스오버(crossover) 커넥션을 도시한다; 도 11B는 네 개의 코어 셀 중 어느 한 코어 셀의 차일드의 어느 한 출력 멀티플렉서의, 4개의 코어 셀 중 그 외의 다른 코어 셀들의 차일드들의 입력 멀티플렉서에 대한 커넥션들을 도시한다.
도 12는 16개의 코어 셀 유닛을 위한 모든 크로스오버 커넥션을 도시한다.
도 13A는 코어 셀의 어느 하나의 입력 멀티플렉서에 대한, 세 개의 펠로우(fellow) 코어 셀들의 출력 멀티플렉서로부터의 커넥션들을 도시한다; 도 13B는 코어 셀의 어느 하나의 출력 멀티플렉서로부터 세 개의 펠로우 코어 셀들의 입력 멀티플렉서에 대한 커넥션들을 도시한다.
도 14는 16개의 코어 셀들의 모든 크로스오버 커넥션들을 도시한다.
도 15는 본 발명에 따라 자동적으로 생성되고 이미 기술된 바 있는 파라미터들을 구비한, 멀티플렉서 기반 계층적(hierarchical), 구성가능한 상호 접속 네트워크의 레이 아웃(layout)이다.
본 발명은 집적 회로 상에서 구성가능한 상호 접속 시스템을 제공하는데, 구성 비트에 응답하는 다수의 멀티플렉서(multiplexer)에 의하여 목적하는 상호 접속 시스템으로 구성될 수 있는 컨덕팅 라인(conducting line)의 배열을 가지고 있다. 각각의 멀티플렉서는 컨덕팅 라인의 서브세트(subset)에 연결된 다수의 입력 단자(input terminals) 및 컨덕팅 라인 중 하나에 연결된 출력 단자(output terminal)를 가진다. 멀티플렉서는 구성 비트의 서브세트에 응답하여 입력 단자 컨덕팅 라인 중 하나를 출력 단자 컨덕팅 라인에 연결한다. 본 발명의 또 하나의측면은 컨덕팅 라인의 배열 및 다수의 멀티플렉서가 계층적 레벨(hierarchical level)의 유닛들을 형성하도록 배열되고 조직된다는 것인데, 어느 한 계층적 레벨의 다수의 유닛들은, 어떤 계층적 레벨의 임의의 한 쌍의 유닛이 상기 한 쌍의 유닛을 포함하는 최하위 계층적 레벨 유닛의 유닛 내에 구성가능한 상호 접속을 구비하도록, 차상위 계층적 레벨(next higher hierarchical level)의 유닛을 형성한다.
본 발명의 또 하나의 측면은 소프트웨어 생성기(generator)가 목적하는 구성가능한 네트워크를 용이하게 생성할 수 있도록 구성가능한 상호 접속 시스템이 파라미터적으로(parametrically) 정의된다. 하나의 파라미터는 차 상위의 계층적 레벨의 유닛을 형성하는 어느 한 계층적 레벨의 유닛의 개수이다.
본 발명은 계층적, 멀티플렉서 기반 상호 접속 아키텍처를 사용한다. 멀티플렉서 기반 상호 접속 네트워크의 예는, 네 개의 수직 와이어들(21)이 두개의 수평 와이어들(22)과 교차하는 것이 도시된 도 2에서 예시된다. 패스 트랜지스터 또는 패스 게이트보다는 멀티플렉서들(23)이 사용된다. 이러한 상기 예에서, 각각의 수평 와이어(22)는 수직 와이어(22)에 연결된 입력 단자들을 가지는 멀티플렉서(23)의 출력 단자에 연결된다. 각각의 수평 와이어(22)는 2개의 제어비트에 의하여 제어되는 4:1 멀티플렉서(23)에 의하여 작동된다. 상기 간단한 예에서는, 도 1B에서 도시된 전통적인 구성가능한 네트워크의 경우에 필요한 8개 대신, 단지 4개의 구성 비트를 필요로 한다.
따라서 멀티플렉서 기반 구성가능한 상호 접속 네트워크는 구성가능한 상호 접속 네트워크에서 동일한 스위치 셀을 구현하기 위해 보다 적은 구성 비트를 필요로 한다. 보다 적은 구성 비트는 보다 작은 FPGA 레이아웃, 보다 작은 외장형(external) 구성 메모리 스토리지(configuration memory storage), 보다 낮은 생산비용, 및 보다 빠른 구성 시간(times)을 의미한다. 패스 트랜지스터 구성가능한 상호 접속 네트워크의 또 다른 장점은 멀티플렉서 기반 구성가능한 상호 접속 네트워크는 전원 및 접지(power and ground)와 단락될 수 없다는 것이다.
본 발명은 또한 멀티플렉서 기반 구성가능한 상호 접속 네트워크를 수반한 계층적 아키텍처를 사용한다. 이는, 계층의 모든 레벨에서의 멀티플렉서의 출력이 라우팅 된 넷(the net being routed)이 높은 팬아웃(fanout)을 가지는 경우라도 엄격히 제한된 로드(load)를 가지기 때문에, 예측가능한 시그널 타이밍(signal timing)을 야기한다. 이와는 대조적으로, 상술된 바 있는 전통적인 FPGA 메시 네트워크 아키텍처에서는 시그널 경로(path) 및 시그널의 타이밍은 자주 예측 불가능하다. 본 발명의 계층적 아키텍처는 또한 보다 빠른 최악의 경우의 지연을 가진다. 상술된 바와 같이, 전통적인 메시 네트워크에서 가장 긴 경로는 N의 제곱근에 비례한다. 계층적 네트워크에서는 가장 긴 경로는 logN에 비례하는데, 따라서 최악의 경우의 지연은 계층 네트워크에서의 N이 증가함에 따라 훨씬 천천히 증가하게된다. 예를 들어, 4K 코어 셀의 정사각형 배열에서, 전통적인 메시에서의 가장 긴 경로는 128인데 반해, 계층적 쿼드 트리(quad tree)에서의 가장 긴 경로는 단지 12이다.
계층적 아키텍처는 크기가변(scalability)의 장점을 가진다. 네트워크에서 로직 셀의 개수가 증가함에 따라, 상호 접속의 필요성이 매우 선형적으로(super- linearly) 증가한다. 계층적 네트워크에서는 단지 계층의 보다 높은 레벨들만이 확장이 필요하며 보다 낮은 레벨은 그대로 유지된다. 이와는 대조적으로, 메시 아키텍처는 증가되는 필요성을 수용하기 위하여 모든 스위치 셀을 확장하여야만 한다. 또한, 계층적 아키텍처는 상호 접속 아키텍처의 자동 생성을 가능하게 한다. 이것이 FPGA 코어가 용이하게 사용자의 SOC로 용이하게 삽입되기 위한 중요한 성능이다. 자동 소프트웨어 생성기(automatic software generator)는 사용자가 어떠한 크기의 FPAG 코어라도 지정할 수 있게 한다. 이는 예측가능한 타이밍을 가진 임의의 네트워크 크기를 위한, 알고리즘적 어셈블리 프로세스(algorithmic assembly process)를 가진 일정한 빌딩 블록(building block)의 사용을 의미한다.
본 발명의 특별한 실시예에서, 계층의 모든 레벨은 4개의 유닛들로 구성되는데, 다시 말해, 모든 패런트(보다 상위 레벨의 유닛)는 네 개의 차일드들(보다 하위 레벨의 유닛들)으로 구성된다. 최하위 레벨은 도 3A에서 도시된 바와 같이 4개의 코어 셀들로 구성된다. 도 3B는 어떻게 네 개의 최하위 레벨 유닛들이 제 2 계층적 레벨 유닛을 형성하는지를 도시하며 도 3C는 어떻게 네 개의 제 2 레벨 계층적 레벨 유닛들(30)이 제 3 계층적 레벨 유닛을 형성하는 지를 도시한다. 따라서제 3 레벨 유닛은 64개의 코어 셀들로부터 형성된다. 물론, 차일드들의 개수는 일반화 될 수 있으며 각각의 레벨은 본 발명에 따라 여러 차일드들의 개수를 가질 수 있다.
모든 레벨에서의 모든 차일드는 각각 차일드 유닛에 대한 입력 시그널 커넥션과 차일드로부터의 출력 시그널 커넥션을 제공하는 입력 멀티플렉서들의 세트(set)와 출력 멀티플렉서들의 세트를 구비한다. 도 4에서 도시되는 예시적인 계층에서, 코어 셀(25)은 네 개의 입력 멀티플렉서(27) 및 두개의 출력 멀티플렉서(26)를 구비하는데, 그러나 상호 접속 아키텍처는 어떠한 입력 멀티플렉서 및 출력 멀티플렉서의 개수에 대해서도 일반화될 수 있다. 네 개의 코어 셀들(25)은 12개의 입력 멀티플렉서(28) 및 12개의 출력 멀티플렉서(29)의 세트를 구비하는 최하위 레벨을 형성한다. 마찬가지로 차상위 계층적 레벨 유닛은 입력 멀티플렉서들의 세트 및 출력 멀티플렉서들의 세트 등을 구비한다.
멀티플렉서를 위한 커넥션의 패턴은 세 가지 카테고리를 갖는다: 유출(export), 크로스오버(crossover), 유입(import). 이러한 서로 다른 카테고리는 도 5의 코어 셀 A로부터 코어 셀 B로의 예시적인 커넥션 루트로 예시된다. 코어 셀 A의 출력 멀티플렉서(26A)로부터 코어 셀 A를 홀딩(holding)하는 최하위, 계층적 레벨 1 유닛(30A)의 출력 멀티플렉서(28A)로의 커넥션이 존재한다. 다음으로 출력 멀티플렉서(28A)로부터 코어 셀 B를 홀딩하는 레벨 1 유닛(30B)의 입력 멀티플렉서(29B)로의 크로스오버 커넥션이 있다. 유닛(30A)과 유닛(30B)은 점선으로 외곽선이 그려진다. 마지막으로, 입력 멀티플렉서(29B)로부터 코어 셀 B의 입력멀티플렉서(27B)로의 유입 커넥션이 있다. 구성된(configured) 커넥션들이 모두 커넥션의 양단, 즉, 코어 셀 A 및 코어 셀 B를 포함하는 최하위 계층적 레벨 유닛 내에 놓여 있음이 특별히 언급되어져야 한다. 이러한 예에서, 최하위 레벨 유닛은 코어 셀 A 및 B를 포함하여, 16개 코어 셀(25)들을 포함하는 레벨 2 유닛이다.
각각의 멀티플렉서를 위한 커넥션들의 완전한 세트는 이하에서 기술된다. 코어 셀(25)에서 시작하면, 각각의 코어 셀(25)은 상기 코어 셀의 입력 멀티플렉서(27) 및 출력 멀티플렉서(26)에 연결된다. 도 6A는 어떻게 코어 셀(25)이 상기 코어 셀의 출력 멀티플렉서(26)의 각각에 연결되는 지를 도시하며, 도 6B는 어떻게 코어 셀(25)이 상기 코어 셀의 입력 멀티플렉서(27)의 각각에 연결되는 지를 도시한다. 계층적 레벨 유닛들, 즉, "패런트(parent)" 및 "차일드들"의 출력 멀티플렉서에 관하여, 계층 패런트의 각각의 출력 멀티플렉서는 상기 패런트의 계층 차일드들 각각의 출력 멀티플렉서에 연결된다. 소프트웨어 생성기는 일정한 멀티플렉서로부터의 잠재적 라우팅 경로를 최대화하고 잠재적 국부 체증(local congestion)을 최소화하기 위하여 커넥션을 고르게 분포시킨다. 예를 들어, "제 1" 패런트 멀티플렉서는 "제 1" 차일드 멀티플렉서에, "제 2" 패런트 멀티플렉서는 "제 2" 차일드 멀티플렉서에 연결된다. 만일 패런트 및 차일드들에 포함되는 출력 멀티플렉서의 개수가 일치되지 않는다면, 산술 모듈로(arithmetic modulo)와 같은 함수(function)가 커넥션 주위를 둘러싸기 위하여 사용된다. 도 7A 내지 도 7C 및 도 8은 유출 커넥션을 도시한다. 도 7A는 유닛을 형성하는 코어 셀(25)의 출력 멀티플렉서(26)에 대한 레벨 1 유닛 출력 멀티플렉서(28)의 커넥션을 도시한다. 이와 반대로, 도 7B는 코어 셀의 패런트의 출력 멀티플렉서(28)에 대한 코어 셀 출력 멀티플렉서(26)의 커넥션을 도시한다. 도 7C는 코어 셀의 패런트의 출력 멀티플렉서(20)에 대한 제 2 코어 셀 출력 멀티플렉서(26)의 커넥션 및 상술된 모듈로 함수(modulo function)에 의한 커넥션의 배열을 도시한다. 도 8은 레벨 2 유닛의 16개 코어 셀(25)을 위한 모든 유출 커넥션을 도시한다.
이와 유사하게, 계층적 패런트에서의 각각의 입력 멀티플렉서는 상기 패런트의 각각의 계층 차일드들에서의 유입 멀티플렉서에 연결된다. 패런트 및 차일드들에서의 입력 멀티플렉서의 개수가 일치되지 않는다면 산술 모듈로와 같은 분포 함수(distributing function)가 커넥션 주위를 감싸기 위하여 사용된다. 도 9A는 레벨 1 패런트 유닛의 어느 하나의 입력 멀티플렉서(29)로부터 상기 패런트의 네 개의 코어 셀 차일드들의 입력 멀티플렉서(27)로의 유입 커넥션을 도시한다. 이와 반대로, 도 9B는 어느 하나의 코어 셀 입력 멀티플렉서(27)에 대한 상기 코어 셀의 패런트의 유출 멀티플렉서(29)로부터의 유입 커넥션을 도시한다. 도 10은 레벨 2 유닛의 16개의 코어 셀(25)을 위한 모든 유입 커넥션을 도시한다.
이러한 유입 및 유출 커넥션의 예시들은 상호 접속 아키텍처의 또 하나의 파라미터를 설명한다. 패런트 멀티플렉서와 상기 패런트의 차일드의 멀티플렉서 사이의 커넥션의 개수가 규정될 수 있다. 상술된 유출 커넥션에 대하여, 1의 파라미터가 사용된다. 다시 말하면, 패런트 멀티플렉서 각각은 각 차일드상의 하나의 멀티플렉서에 연결되었다. 유입 커넥션에 대하여, 3의 파라미터가 사용된다. 다시 말하면, 패런트 입력 멀티플렉서 각각은 각 차일드상의 세 개의 입력 멀티플렉서에연결된다. 기술된 바 있는 모듈로 함수와 같은 분포함수(distribution function)가 커넥션을 고르게 분포시키기 위하여 사용된다.
크로스오버 커넥션은 계층의 각 레벨에서 유출 커넥션을 유입 커넥션에 결합한다. 각 레벨에서, 일반적으로 같은 개수의 출력 멀티플렉서와 입력 멀티플렉서가 있다. 크로스오버 커넥션에 대하여는, 각 차일드상의 각각의 입력 멀티플렉서는 동일한 계층적 레벨이 있는 그 외의 각 차일드들 상의 대응되는 출력 멀티플렉서에 연결된다. 모든 레벨이 4개의 차일드들을 가지고 있는 상기 예의 경우, 따라서, 각 입력 멀티플렉서는 3개의 다른 차일드들의 출력 멀티플렉서와 연결한다. 각 차일드를 위해 연결하는 많은 출력 멀티플렉서들의 개수에 대한 파라미터 또한 있으며 함수가 커넥션들을 고르게 분포시키기 위하여 사용된다. 상기 예시에서는 2의 파라미터가 특정되었다. 이는 어느 하나의 4-코어 셀 차일드의 입력 멀티플렉서(29)가 그 외의 다른 4-코어 셀 차일드들의 6개의 출력 멀티플렉서(28)에 연결되는 것을 도시하는 도 11A에서 설명된다. 이와 반대로, 도 11B는 어느 하나의 4-코어 셀 차일드의 어느 하나의 출력 멀티플렉서(28)의 그 외의 다른 4-코어 셀 차일드들의 6개의 입력 멀티플렉서(29)에 대한 커넥션을 도시한다. 도 12는 16-코어 셀 유닛에 대한 모든 크로스오버 커넥션들을 도시한다. 크로스오버 커넥션의 특별한 경우는 최하위 코어 셀의 상호 접속이다. 도 13A에서 도시된 바와 같이, 코어 셀(25)의 레벨에서는, 입력 멀티플렉서(27)는 상기 코어 셀을 포함한 모든 차일드들의 출력 멀티플렉서(26)에 연결된다. 이러한 커넥션은 하나의 코어 셀(25)상에서 피드백(feedback path)을 수용한다. 이러한 상기 예에서, 차일드 당 커넥션들의 개수를 위한 파라미터는 1로서 특정된다. 도 13B는 코어 셀(25)의 어느 하나의 출력 멀티플렉서(26)로부터 3개의 펠로우 코어 셀(25)의 입력 멀티플렉서(27)에 대한 커넥션을 도시한다. 각 코어 셀(25)의 입력 멀티플렉서(27)에 대한 두개의 커넥션이 있음을 주목해야 한다. 도 14는 16개 코어 셀의 모든 크로스오버 커넥션들을 도시한다.
본 발명은 상호접속 네트워크의 발생을 파라미터화 함에 의한 계층적 아키텍처의 규칙성(regularity) 및 예측가능성(predictability)을 이용한다. 입력 데이타는 파일(file) 또는 인터랙티브 사용자 입력(interactive user input)으로부터 올 수 있다. 목적하는 구성된 네트워크의 특징의 다수는 파라미터에 의하여 기술될 수 있다. 로직 셀의 총 개수는 파라미터화 된다. 이미 기술된 예에서, 16개 코어 셀이 특정되었다. 계층적 레벨 당 차일드들의 개수가 파라미터화 되는데, 상기 예에서는 모든 레벨에서 4개의 차일드들이 있다. 각 계층적 레벨에 대한 입력 및 출력 멀티플렉서의 개수가 파라미터화 된다. 상술된 예에서, 패런트 멀티플렉서 대 차일드 멀티플렉서에 대해 3의 일정한 비율이 특정되었다. 다시 말하면, 어느 레벨에서 한 유닛을 위한 4개의 입력 멀티플렉서가 있다면, 패런트 레벨은 12개의 입력 멀티플렉서를 구비한다.
이하는 파일의 가능한 내역의 예시이다:
레 벨레 벨 1 차일드들 1 유 입 4 유 출 2레 벨 2 차일드들 4 유 입 12 유 출 12레 벨 3 차일드들 4 유 입 36 유 출 36레 벨 4 차일드들 4 유 입 108 유 출 108레 벨 5 차일드들 4 유 입 216 유 출 216레 벨 6 차일드들 4 유 입 432 유 출 432레 벨 7 차일드들 2 유 입 864 유 출 864마지막 레벨
일정한 비율 3은 계층적 상호 접속에서 라우팅가능성(routability)을 실험적으로 연구한 논문, 즉 1994년 발간된 Proceedings of IEEE International Conference on Computer Design에 수록된 A. Aggarwal과 D. Lewis 저 "계층적 필드 프로그램가능 게이트 어레이를 위한 라우팅 아키텍처(Routing Architectures for Hierarchical Field Programmable Gate Arrays)"를 기초로 하여 선택되었다는 것을 밝힌다. 상기 논문은 이진 트리(binary tree) 계층에서 1.7의 비율이 적절한 라우팅가능성을 부여한다고 결론지었다. 쿼드 트리 계층에 대해서는, 비율은 (1.7*1.7)=2.89일 것이다. 상기 연구는 비교적 적은 예들만을 사용했기 때문에, 이러한 비율은 최소한의 요구로서 고려되어야만 한다. 상수 3은 0.75의 지수(exponent)를 사용한 렌트의 법칙 계산(Rent's Rule calculation)과 거의 동일하다.
파라미터로서 언급된 상수들을 수반하는 상술된 상호 접속 아키텍처는 또한 여러 실제 설계(real world designs) 및 산업 표준 기준(industry standard benchmarks)에 대하여 테스트되었다. 16K 코어 셀만큼이 사용되었고 100% 정도 높은 활용도가 얻어졌다. 모든 테스트 케이스들(cases)들이 성공적으로 완료되었다. 특히, 4 입력 및 2 출력을 구비하는 코어 셀의 쿼드 트리 계층에 대한 이미언급된 파라미터들이 사용되었는데, 상기 코어 셀에서는 각 출력 멀티플렉서는 4:1이고 각 입력 멀티플렉서는 12:1이며, 각 입력 멀티플렉서가 13:1인 코어 셀은 제외되었다. 이러한 크기 및 팬아웃의 멀티플렉서에 대한 전달 지연(propagation delay)은 매우 수용 가능하였다.
멀티플렉서 크기 및 상기 멀티플렉서의 상호접속 패턴의 일정성은 상호접속 아키텍처의 용이한 자동 생성을 가능하게 한다. 자동 소프트웨어에 의한 구성가능한 상호접속 네트워크의 생성 외에, 네트워크는 가장 적절한 크기로 용이하게 크기가 조절될 수 있다. 타이밍 딜레이는 예측가능하며 최악의 경우의 지연은 알려진다. 도 15는 소프트웨어 생성기의 결과, 즉, 2048개의 코어 셀을 수반하는, 멀티플렉서 기반 계층적 구성가능한 상호접속 네트워크이다.
전술한 바는 본 발명의 실시예에 대하여 완벽하게 기술하는 반면, 다양한 수정예, 변형예, 및 균등예가 만들어지고 사용될 수 있음은 자명하다. 따라서, 상기 기술은 첨부된 청구범위의 경계에 의하여 한정되는 본 발명의 보호범위를 제한하는 것으로 받아들여져서는 안된다.

Claims (14)

  1. 집적 회로 상의 구성가능한 상호접속 시스템으로서,
    구성 비트(configuration bit)에 응답하는 다수의 멀티플렉서에 의하여 목적하는 상호접속 시스템으로 구성될 수 있는 컨덕팅 라인(conducting line)의 배열을 포함하며, 각각의 상기 멀티플렉서는 컨덕팅 라인의 서브세트(subset)에 연결된 다수의 입력 단자 및 컨덕팅 라인 중 어느 하나에 연결된 하나의 출력 단자를 구비하며, 상기 멀티플렉서는 상기 구성 비트의 서브세트에 응답하여 상기 입력 단자 중 어느 하나를 상기 출력 단자 컨덕팅 라인에 연결하는 구성가능한 상호접속 시스템.
  2. 제 1 항에 있어서, 상기 컨덕팅 라인의 배열 및 다수의 멀티플렉서는 계층적 레벨의 유닛들을 형성하도록 구성되고 배열되며, 하나의 계층적 레벨의 다수의 유닛들이 차상위 계층적 레벨(next higher hierarchical level)의 유닛을 형성하며, 계층적 레벨에서의 임의의 한 쌍의 유닛은 상기 한 쌍의 유닛을 포함하는 최하위 계층적 레벨 유닛 내에서 상기 유닛간에 구성가능한 상호접속을 구비하는 구성가능한 상호접속 시스템.
  3. 제 2 항에 있어서, 차상위 계층적 레벨의 유닛을 형성하는, 하나의 계층적 레벨의 다수의 유닛들이 각각 미리 선택되는(preselected) 구성가능한 상호접속 시스템.
  4. 제 2 항에 있어서, 각 계층적 레벨의 각 유닛은 입력 및 출력 멀티플렉서를 구비하며, 각 입력 멀티플렉서는 상기 유닛 외부의 컨덕팅 라인에 연결된 다수의 입력 단자들 및 상기 유닛 내부의 컨덕팅 라인에 연결된 하나의 출력 단자를 구비하며, 각 출력 멀티플렉서는 상기 유닛 내부의 컨덕팅 라인에 연결된 다수의 입력 단자들 및 상기 유닛 외부의 컨덕팅 라인에 연결된 하나의 출력 단자를 구비하는 구성가능한 상호접속 시스템.
  5. 제 4 항에 있어서, 각 계층적 레벨에서 다수 유닛의 입력 및 출력 멀티플렉서가 각각 미리 선택되는 구성가능한 상호접속 시스템.
  6. 제 5 항에 있어서, 멀티플렉서 빌딩 블록(building blocks)의 세트를 미리 설정하는 구성가능한 상호접속 시스템.
  7. 제 5 항에 있어서, 하나의 계층적 레벨의 각 유닛의, 상기 입력 멀티플렉서의 입력 단자들이 상기 제 1 계층적 레벨의 상기 유닛들에 의하여 형성되는 차상위 계층적 레벨의 유닛들의, 입력 멀티플렉서의 출력 단자들에 연결되며, 상기 하나의 계층적 레벨의 각 유닛의, 상기 출력 멀티플렉서의 상기 출력 단자들은 상기 어느 하나의 계층적 레벨의 상기 유닛들에 의하여 형성되는 상기 차상위 계층적 레벨의상기 유닛들의, 상기 출력 멀티플렉서의 입력 단자들에 연결되는 구성가능한 상호접속 시스템.
  8. 제 7 항에 있어서, 상기 차상위 계층적 레벨의 유닛의, 각 입력 멀티플렉서의 출력 단자가 상기 차상위 계층적 레벨의 상기 유닛을 형성하는 각 유닛의, 각 입력 멀티플렉서의 입력 단자들에 연결되는 구성가능한 상호접속 시스템.
  9. 제 7 항에 있어서, 상기 차상위 계층적 레벨의 유닛의, 각 출력 멀티플렉서의 입력 단자가 상기 차상위 계층적 레벨의 상기 유닛을 형성하는 각 유닛의, 각 출력 멀티플렉서의 출력 단자에 연결되는 구성가능한 상호접속 시스템.
  10. 제 7 항에 있어서, 상기 제 1 계층적 레벨의 상기 유닛들에 의하여 형성되는 차상위 계층적 레벨의 유닛들의 입력 멀티플렉서들의 출력 단자에 대한 하나의 계층적 레벨의 각 유닛의 상기 입력 멀티플렉서들의 상기 입력 단자들의 커넥션들 및 상기 어느 하나의 계층적 레벨의 상기 유닛들에 의하여 형성되는 상기 차상위 계층적 레벨의 상기 유닛들의 상기 출력 멀티플렉서의 입력 단자들에 대한 상기 하나의 계층적 레벨의 각 유닛의 상기 출력 멀티플렉서들의 상기 출력 단자들의 커넥션들이 알고리즘으로(algorithmically) 결정되는 구성가능한 상호 접속 시스템.
  11. 제 10 항에 있어서, 상기 차상위 계층적 레벨의 유닛의 각 입력 멀티플렉서의 출력 단자가 상기 차상위 계층적 레벨의 상기 유닛을 형성하는 각 유닛의 입력 멀티플렉서들의 서브세트(subset)의 입력 단자에 연결되며, 상기 차상위 계층적 레벨의 상기 유닛을 형성하는 모든 유닛들의 입력 멀티플렉서들의 상기 서브세트가 모든 유닛들에 대하여 모듈로(modulo)에 의하여 결정되는 구성가능한 상호접속 시스템.
  12. 제 10 항에 있어서, 상기 차상위 계층적 레벨의 유닛의 각 출력 멀티플렉서의 입력 단자가 상기 차상위 계층적 레벨의 상기 유닛을 형성하는 각 유닛의 각 출력 멀티플렉서의 출력 단자들에 연결되며, 상기 하나의 계층적 레벨의 상기 유닛들에 의하여 형성되는 차상위 계층적 레벨의 상기 유닛들의 상기 출력 멀티플렉서의 입력 단자들에 대한 상기 하나의 계층적 레벨의 각 유닛의 상기 출력 멀티플렉서들의 상기 출력 단자들의 커넥션이 있는 구성가능한 상호접속 시스템.
  13. 제 1 항에 있어서, 상기 집적회로는 FPGA를 포함하는 구성가능한 상호접속 시스템.
  14. 제 1 항에 있어서, 상기 집적회로는 SOC를 포함하는 구성가능한 상호접속 시스템.
KR10-2004-7001008A 2001-07-24 2002-07-24 크기 가변 및 자동 생성을 위한 계층적 멀티플렉서 기반집적회로 상호접속 아키텍처 KR20040030846A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US30753401P 2001-07-24 2001-07-24
US60/307,534 2001-07-24
PCT/US2002/023486 WO2003010631A2 (en) 2001-07-24 2002-07-24 Hierarchical multiplexer-based integrated circuit interconnect architecture for scalability and automatic generation

Publications (1)

Publication Number Publication Date
KR20040030846A true KR20040030846A (ko) 2004-04-09

Family

ID=23190168

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2004-7001008A KR20040030846A (ko) 2001-07-24 2002-07-24 크기 가변 및 자동 생성을 위한 계층적 멀티플렉서 기반집적회로 상호접속 아키텍처

Country Status (7)

Country Link
US (1) US20030039262A1 (ko)
EP (1) EP1417811A2 (ko)
KR (1) KR20040030846A (ko)
CN (1) CN1537376A (ko)
AU (1) AU2002326444A1 (ko)
CA (1) CA2454688A1 (ko)
WO (1) WO2003010631A2 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004015744A2 (en) * 2002-08-09 2004-02-19 Leopard Logic, Inc. Via programmable gate array interconnect architecture
US7584345B2 (en) * 2003-10-30 2009-09-01 International Business Machines Corporation System for using FPGA technology with a microprocessor for reconfigurable, instruction level hardware acceleration
US6975139B2 (en) * 2004-03-30 2005-12-13 Advantage Logic, Inc. Scalable non-blocking switching network for programmable logic
EP1866816A4 (en) * 2005-03-11 2008-10-29 Commw Scient Ind Res Org TREATMENT OF GENEALOGY DATA
US7581079B2 (en) * 2005-03-28 2009-08-25 Gerald George Pechanek Processor composed of memory nodes that execute memory access instructions and cooperate with execution nodes to execute function instructions
US7786757B2 (en) * 2008-03-21 2010-08-31 Agate Logic, Inc. Integrated circuits with hybrid planer hierarchical architecture and methods for interconnecting their resources
US8024693B2 (en) * 2008-11-04 2011-09-20 Synopsys, Inc. Congestion optimization during synthesis
US8488623B2 (en) 2010-07-28 2013-07-16 Altera Corporation Scalable interconnect modules with flexible channel bonding
EP2568392A4 (en) 2011-06-24 2013-05-22 Huawei Tech Co Ltd COMPUTERS SUBSYSTEM AND COMPUTER SYSTEM
US9542118B1 (en) * 2014-09-09 2017-01-10 Radian Memory Systems, Inc. Expositive flash memory control
EP4085354A4 (en) 2019-12-30 2024-03-13 Star Ally International Limited PROCESSOR FOR CONFIGURABLE PARALLEL CALCULATIONS

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4833673A (en) * 1987-11-10 1989-05-23 Bell Communications Research, Inc. Time division multiplexer for DTDM bit streams
US5136587A (en) * 1989-01-09 1992-08-04 Fujitsu Limited Digital signal multiplexing apparatus and demultiplexing apparatus
US5701091A (en) * 1995-05-02 1997-12-23 Xilinx, Inc. Routing resources for hierarchical FPGA
US6370140B1 (en) * 1998-01-20 2002-04-09 Cypress Semiconductor Corporation Programmable interconnect matrix architecture for complex programmable logic device

Also Published As

Publication number Publication date
WO2003010631A3 (en) 2003-11-06
US20030039262A1 (en) 2003-02-27
WO2003010631A2 (en) 2003-02-06
CA2454688A1 (en) 2003-02-06
EP1417811A2 (en) 2004-05-12
AU2002326444A1 (en) 2003-02-17
WO2003010631A9 (en) 2003-12-24
CN1537376A (zh) 2004-10-13

Similar Documents

Publication Publication Date Title
US5631578A (en) Programmable array interconnect network
US6054873A (en) Interconnect structure between heterogeneous core regions in a programmable array
US7137095B1 (en) Freeway routing system for a gate array
US7342416B2 (en) Tileable field-programmable gate array architecture
US5652529A (en) Programmable array clock/reset resource
KR20040030846A (ko) 크기 가변 및 자동 생성을 위한 계층적 멀티플렉서 기반집적회로 상호접속 아키텍처
US6194914B1 (en) Semiconductor integrated circuit capable of realizing logic functions
Sun et al. Routing for symmetric FPGAs and FPICs
US8981814B2 (en) Permutable switching network with enhanced interconnectivity for multicasting signals
Azarian et al. Reconfigurable computing architecture survey and introduction
US6624657B2 (en) Block connector splitting in logic block of a field programmable gate array
US6742172B2 (en) Mask-programmable logic devices with programmable gate array sites
US7355443B2 (en) Integrated circuit having building blocks
US7777519B2 (en) Permutable switching network with enhanced multicasting signals routing for interconnection fabric
US7994818B2 (en) Programmable interconnect network for logic array
US6781170B2 (en) Integrated circuit base transistor structure and associated programmable cell library
US8395415B2 (en) Enhanced permutable switching network with multicasting signals for interconnection fabric
Chang et al. Programmable Logic Devices
Caspi et al. On detailed routing for a hierarchical scalable reconfigurable array with constrained switching capability
Jacobson et al. Configurable Device Architectures
KR20050016894A (ko) 집적 회로 및 그 설계 방법과 전자 장치
JPH0316155A (ja) 半導体集積回路

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid