메모리를 사용한 컴퓨팅

Computing with Memory

Memory를 이용한 Computing with Memory는 기능 응답이 LUT(Lookup Tables)의 형태로 1차원 또는 2차원 메모리 어레이에 저장되고, LUT에서 값을 검색하여 함수를 평가하는 컴퓨팅 플랫폼을 말한다.이러한 컴퓨팅 플랫폼은 현장 프로그래머블 게이트 어레이(FPGA)에서처럼 순전히 공간 컴퓨팅 모델이나 여러 클럭 사이클에 걸쳐 함수를 평가하는 시간 컴퓨팅 모델을 따를 수 있다.후자의 접근방식은 컴퓨터 요소 내에서 상호연결 자원을 접음으로써 FPGA에서 프로그램 가능한 상호연결의 오버헤드를 줄이는 것을 목표로 한다.고밀도 2차원 메모리 어레이를 사용해 대형 다입력 다중출력 LUT를 저장한다.메모리를 이용한 컴퓨팅은 같은 칩에 프로세서와 메모리를 통합해 메모리 지연 시간을 줄이고 대역폭을 늘리는 맥락에서 광범위하게 조사된 메모리나 프로세서-메모리(PIM) 개념과는 다르다.이러한 아키텍처들은 프로세서와 메모리 사이에서 데이터가 이동하는 거리를 줄이려고 한다.버클리 IRAM 프로젝트는 PIM 아키텍처 분야에서 주목할 만한 기여 중 하나이다.null

세부 사항

메모리 플랫폼을 사용한 컴퓨팅은 일반적으로 하드웨어 재구성이라는 이점을 제공하는 데 사용된다.재구성 가능한 컴퓨팅 플랫폼은 설계 비용 절감, 출시 초기, 신속한 프로토타이핑 및 사용자 정의가 용이한 하드웨어 시스템 측면에서 이점을 제공한다.FPGA는 디지털 회로 구현을 위해 인기 있는 재구성 가능한 컴퓨팅 플랫폼을 제공한다.그들은 순수하게 공간 컴퓨팅 모델을 따른다.1985년 FPGA의 기본 구조는 구성 가능한 논리 블록(CLB)의 2차원 배열과 프로그램 가능한 상호 연결 매트릭스로 구성되었다.[1]FPGA 성능과 전력 소산은 정교한 프로그램 가능 인터커넥트(PI) 아키텍처가 대부분이다.[2][3]FPGA에서 PI 아키텍처의 영향을 줄이는 효과적인 방법은 작은 LUT를 근접하게(클러스터라고 함) 배치하고 로컬 인터커넥트를 사용하여 클러스터 내 통신을 허용하는 것이다.클러스터링된 FPGA 아키텍처의 이점 때문에 주요 FPGA 공급업체들은 이를 상용 제품에 통합했다.[4][5]대형 멀티입력 멀티출력 LUT를 임베디드 메모리 블록에 매핑해 미세한 FPGA에서의 PI로 인한 오버헤드를 줄이기 위한 조사도 이뤄졌다.유사한 공간 컴퓨팅 모델을 따르지만, 논리 기능의 일부는 임베디드 메모리 블록을 사용하여 구현되는 반면 나머지 부분은 더 작은 LUT를 사용하여 실현된다.[6]이러한 이기종 매핑은 프로그램 가능한 상호 연결의 기여도를 감소시킴으로써 영역과 성능을 개선할 수 있다.null

FPGA의 순수 공간 컴퓨팅 모델과는 달리, 기존 FPGA에 비해 성능과 에너지를 향상시키는 맥락에서 시간 컴퓨팅 모델(또는 시간 컴퓨팅 모델과 공간 컴퓨팅 모델의 조합)을 채용하는 재구성 가능한 컴퓨팅 플랫폼도 조사되었다.MBC(Memory Based Computing)라고 불리는 이러한 플랫폼은 고밀도 2차원 메모리 어레이를 사용하여 LUT를 저장한다.그러한 프레임워크는 복잡한 함수(f)를 작은 하위 기능으로 분해하는 것, 즉 메모리 어레이에서 다중 입력, 다중 출력 LUT로 하위 기능을 나타내고 다중 사이클에 걸쳐 함수 f를 평가하는 것에 의존한다.MBC는 나노스케일 메모리의 고밀도, 저전력, 고성능 장점을 활용할 수 있다.[8]null

각 컴퓨팅 요소에는 LUT 저장용 2차원 메모리 어레이, 하위 기능의 시퀀싱 평가를 위한 소형 컨트롤러, 개별 파티션의 중간 출력을 고정하는 임시 레지스터 세트가 통합되어 있다.각 컴퓨팅 블록 내부의 빠른 로컬 라우팅 프레임워크는 LUT 액세스를 위한 주소를 생성한다.그러한 복수의 컴퓨팅 요소는 FPGA와 같은 프로그램 가능한 인터커넥트 아키텍처를 사용하여 공간적으로 연결될 수 있어 큰 기능의 매핑이 가능하다.컴퓨팅 요소 내부의 로컬 시간 다중 실행은 에너지 지연 제품의 큰 개선과 기술 세대에 걸친 성능의 더 나은 확장성으로 이어지는 프로그램 가능한 상호 연결의 요구사항을 크게 줄일 수 있다.각 컴퓨팅 요소 내부의 메모리 배열을 컨텐츠 주소 지정 메모리(CAM)로 실현하여 특정 애플리케이션의 메모리 요구량을 대폭 줄일 수 있다.[7]null

참고 항목

참조

  1. ^ K.Compton and S.Huck, "Computing: A Survey of Systems and Software"(컴퓨팅: A Survey of Systems and Software), ACM Survey, Vol.
  2. ^ S. M. 트림버거, 현장 프로그래머블 게이트 어레이 기술, 노웰, MA: 클루워, 1994.
  3. ^ A. Rahman, S. Das, A. P. Chandrakasan, R. Reif, "필드 프로그래밍 가능한 게이트 어레이를 위한 3차원 통합 기술", IEEE Trans. 2003년 2월 1권 11호 대형 통합 시스템에 대하여.
  4. ^ 시린스 코퍼레이션
  5. ^ 알테라 코퍼레이션
  6. ^ J. Cong와 S. Suh, 1998년 현장 프로그래머블 게이트 어레이 심포지엄 "임베디드 메모리 블록을 사용한 FPGA 기술 매핑"
  7. ^ a b S. Paul과 S.Bhunia, 2008년 디자인 자동화 컨퍼런스 "성능 및 리소스 사용 개선을 위한 주소 지정 가능한 메모리를 사용한 재구성 가능"
  8. ^ a b S. Paul, S. Chatterjee, S. Mukhopadhyy, S.Bhunia, 2009년 나노기술 국제회의 "Nonoscale 2-D STTRAM Array를 사용한 Nanoscale 재구성 가능 컴퓨팅"