검색 상세

회로의 기능 유지와 면적 최소화를 고려한 SoC 와이어 파이프라이닝 방법 : A Wire Pipelining Method for Preserving the Functionality and Minimizing Area in System-on-Chip

  • 발행기관 서강대학교 대학원
  • 지도교수 임종석
  • 발행년도 2007
  • 학위수여년월 2007. 8
  • 학위명 석사
  • 학과 및 전공 컴퓨터학
  • 식별자(기타) 000000104450
  • 본문언어 한국어

목차

System-On-Chip(SoC) 설계에서는 Intellectual Property(IP)들 사이를 연결해 주는 글로벌 와이어(global wire)의 지연 시간이 클락 주기보다 상대적으로 클 수가 있다. 이 문제를 해결하기 위해 글로벌 와이어에 메모리 요소(memory element)를 삽입하는 파이프라이닝(pipelining) 방법이 제시되었다. 그러나 와이어에 임의로 플립플롭을 삽입하면 회로의 기능(functionality) 유지를 보장하지 못한다.
리타이밍(retiming)은 회로의 기능을 보존하면서, 메모리 요소의 위치를 이동하여 클락 주기를 줄이거나 사용된 메모리 요소 수를 줄이는 방법이다. 참고문헌[6]은 리타이밍을 이용하여 동일한 기능을 하는 와이어 파이프라이닝 회로를 얻는 방법을 제시하였다. 이 알고리즘에서는 모든 블록이 조합블록(combinational block)이라고 가정하지만, 일반적으로 회로를 조합 블록으로 분할하기는 어렵다. 그리고 이 알고리즘의 결과는 입력 Gp(기능 유지를 고려하지 않은 파이프라이닝 회로를 나타내는 그래프)의 상태에 따라 달라지지만, 효율적인 Gp의 생성 과정이 알고리즘에 포함되지 않았다.
본 논문에서는 SoC 회로(macro-level netlist)와 목표로 하는 클락 주기(target clock period) T가 주어질 때, 여분의 플립플롭을 삽입하여 회로의 기능을 유지하면서 T를 만족하는 와이어 파이프라이닝 방법을 제시한다. 본 논문의 방법은 참고문헌[6]의 결과에 비하여 사용된 플립플롭 개수가 평균 2.47% 감소하였다. 참고문헌[5][7]에서는 주어진 파이프라이닝된 회로에서 SoC 리타이밍을 이용하여 최소 클락 주기(minimum clock period)를 구하였다. 목표로 하는 클락 주기가 참고문헌[5][7]에서 구한 최소 클락 주기보다 작아 와이어 파이프라이닝이 필요한 경우, 본 논문의 방법을 이용하면 여분의 플립플롭을 삽입하여 회로의 기능 유지와 면적 최소화를 고려한 회로를 얻을 수 있음을 확인한다.

more

목차

In the System-On-Chip(SoC) design, delay of global wires interconnecting Intellectual Properties(IPs) is relatively greater than the system clock period. In order to address this problem, pipelining, which inserts memory elements into global wires, is necessary. But the functionality of circuit may not be preserved hen flip-flops are inserted arbitrarily.
Retiming is a method which repositions memory elements to decrease either the clock period or the number of memory elements used, and preserve functionality of the circuit as well. Nookala used retiming in his method to obtain a wire pipelining circuit that guarantees functionality[6]. In his algorithm, every block is assumed to be combinational, but it is generally difficult to partition a circuit into combinational blocks. Furthermore, the output of his
algorithm depends on Gp(the graph which represents a wire-pipelined circuit, but not functionally equivalent), but his
algorithm does not specify a method to construct an effective G_p.
In this paper, we suggest an SoC pipelining method to obtain a wire
pipelining circuit by inserting the minimum number of flip-flops. This was accomplished by modifying Nookala''s method with an SoC(macro-level netlist) and target clock period provided.
Experimental results show that our SoC wire pipelining method decreases the number of deployed flip-flops by 2.47 percents on the
average when compared with Nookala''s method. Lin[5][7] proposed a method to calculate the minimum clock period of a given SoC pipelined circuit using SoC retiming. When the target clock period was smaller than the minimum clock period obtained via Lin''s method, wire pipelining is needed. Using our SoC wire pipelining method, we could obtain a circuit with preserved functionality and minimized area by inserting extra flip-flops.

more