2016-07-17 3 views

답변

1

조건이 목록은 불완전 할 수 있습니다

  • 크기
    메모리가 작은 것일 경우, ISE 대신 BlockRAM의 distibuted RAM (LUT-RAM)을 사용합니다. 메모리의 크기/영역은 BlockRAM의 단일 또는 그룹으로 매핑 가능해야합니다. 단일 BlockRAM은 데이터 포트 당 8,9,16,18,32,36,64,72 비트를 가질 수 있습니다. 메모리 라인의 수가 일치하면 다른 크기가 가능합니다.
  • 포트
    BlockRAM가 지원

    • 단일 포트 (SP)
    • 간단한 듀얼 - 포트 (SDP)
    • 향상된 간단한 듀얼 - 포트 (ESDP) 및
    • 트루 듀얼 포트 (TDP)

    기억. 하나의 쓰기 포트 및 n 개의 읽기 포트와의 조합도 가능합니다.

  • 재설정
    BlockRAM은 재설정을 지원하지 않습니다. 따라서 메모리를 재설정 할 수 있다면 if를 BRAM으로 추측 할 수 있습니다.
  • ClockEnable (CE)는, (BWE)를 바이트 쓰기-사용
    BlockRAMs는 CE와 우리, 그러나 보통 어떤 BWE를 지원 (WE) 쓰기 활성화합니다.
  • 타이밍
    메모리는 동 기적으로 쓰여지고 동기식으로 읽거나 등록 된 주소에서 비동기 적으로 읽어야합니다.
  • 출력 레지스터 (OUT_REG)
    출력 레지스터는 옵션이지만 전체 타이밍을 향상시킵니다. 신시사이저는 OUT_REG를 논리에서 내장 된 출력 레지스터가있는 BlockRAM으로 이동할 수 있습니다.

우리의 오픈 소스 라이브러리 PoC에는 Xilinx BlockRAM에 매핑 할 수있는 일반 VHDL 코드로 작성된 on-chip RAM 개의 구현이 포함되어 있습니다. 나는이 VHDL 스 니펫을 읽고 이해하여 Verilog 코드로 변환 할 수 있다고 가정합니다. :) 대안으로, 자일링스는 합성 가능한 코드의 VHDL 및 Verilog 디자인 패턴을 나열하는 synthesis guide (UG 626, v14.4, 73 페이지)을 제공한다.