FPGA 디바이스 CONFIGURATION

1.사이클론 칩은 3가지 형태의 configuration 을 제공한다.

Active Serial, Passive Serial, JTAG-BASE 의 방법이다.

 사이클론은 SRAM 베이스로 구현하였기에 전원을 끄면 데이타가 사라진다.

이를 방지하기 위해  CONFIGURATION 롬을 사용하게 되는데 

EPC2LO20 같은 칩이 바로 그것이다.

 JTAG 만들 이용하여 CONFIGURATION 을 하는 경우에는

전원을 끄면 데이타가 사라지므로,

 보통 AS(Active Serial), PS(Passive Serial) 의 방법을 이용하게 된다.

 AS 는 EPCS1 이나 EPCS4 시리즈의 칩들을 사용하는 경우에 쓰이며

 PS 는 EPC2,EPC4,EPC8,EPC16 등의 칩을 사용하는 경우에 쓰인다.

 따라서, 여기서는 PS 만을 언급하겠다.

 PS 를 사용하기 위해서는 먼저, 사이클론의 외부 핀중 MSEL0 을 LOW 에 연결하고

 MSEL1 에 HIGH 를 연결한다.


2. configuration device 와의 연결

사용자 삽입 이미지

주의할 점은 (3) 이라고 표시된 풀업 저항의 경우에 epc2 의 내부에도 풀업 저항이 있으므로, 만약 (3)을 쓰고
싶으면, 디바이스 내의 풀업 저항을 disable 해줘야 한다.

disable 하는 방법은

쿼터스2 프로그램 -> assignment 메뉴 -> device 선택 -> device and pin button ->
configuration 탭 -> configuration device option 버튼 -> Disalbe nCS and OE pull up... 체크

이 되겠다.

(2)번 저항에 대해서

nINIT_CONF 단자 내에도 칩 내부에 풀업 저항이 있다. 이것은 설정으로 끌 수 없다.
만약 nINIT_CONF 를 사용하지 않는 경우엔 반드시 풀업 저항 혹은 직접 VCC 에 연결해준다.

nCEO는 여러개의 fpga 를 쓸 때 쓰는 핀이다. 하나의 칩만을 쓸때에는 NC(no connection)으로 플로팅 시키며
nCE는 접지 시킨다.

 3. JTAG 를 주로 사용할 때에 주의할 점에 대해서, 알테라 사이트 측은 이렇게 써 있다.

 Even though other programming or configuration pins (for FPGA) are not used in JTAG mode, they must be properly connected and cannot be left floating.

  1. nTRST - Driven high during JTAG configuration.
  2. nCE - Connect to GND or driven low during JTAG configuration.
  3. MSEL pins - Connect to ground.
  4. nCONFIG - Driven high or pulled to VCC through a pull-up resistor.
  5. DCLK - Either pull-up or pull-down through resistor.
  6. DATA pin(s) - Either pull-up or pull-down through resistor.
  7. nSTATUS - Pull to VCC through a pull-up resistor. When the device is powered-up, this pin will be released to high.
  8. CONF_DONE - Pull to VCC through a pull-up resistor. Should be pulled-up individually for the devices in a chain. When the device is successfully configured, this pin will be released to high.
  9. INIT_DONE - When used, pull-up to VCC.