nios ii...2 altera corporation altera corporation 3 nios ii 임베디드 프로세서 제품군...

12
Nios II 세계 최상의 임베디드 프로세서 2004년10월

Upload: others

Post on 15-Feb-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Nios II...2 Altera Corporation Altera Corporation 3 Nios II 임베디드 프로세서 제품군 오늘날의 임베디드 설계 엔지니어들 은 매우 중요한 문제에 직면해

Nios II세계 최상의 임베디드 프로세서

2004년10월

Page 2: Nios II...2 Altera Corporation Altera Corporation 3 Nios II 임베디드 프로세서 제품군 오늘날의 임베디드 설계 엔지니어들 은 매우 중요한 문제에 직면해

2 Altera Corporation Altera Corporation 3

알테라 코퍼레이션은 시스템-온-어-프로그래

머블-칩(SOPC) 솔루션에 관한 세계적인 선두 주자입니다. 프로그래머블 로직과 structured ASIC 테크놀러지가 통합된 소프트웨어 툴과 IP(intellectual property), 임베디드 프로세서, 주변기기, 및 설계 서비스와 결합되어 알테라는 거의 모든 설계의 요건을 충족하는 고도의 프로그래머블 솔루션을 제공하고 있습니다. 타고

난 프로그래머블 로직의 장점-비용 및 타임-투-마켓의 이점 , 낮은 위험성 및 유연성-을 갖춘 알테라의 제품이 스탠더드 ASIC과 ASSP 과 같은 위험성과 비용 소비가 많은 솔루션을 대체

하고 있습니다. 오늘날, 알테라 디바이스는 기존의 프로그래머블 로직이 사용되었던 때보다 더욱 다양화된 시장으로부터 많은 부가가치를 이끌어내고 있습니다.

보다 자세한 업계 최첨단의 프로그래머블 로직 솔루션에 대하여 알테라의 웹사이트 www.altera.com을 참조하시기 바랍니다.

Page 3: Nios II...2 Altera Corporation Altera Corporation 3 Nios II 임베디드 프로세서 제품군 오늘날의 임베디드 설계 엔지니어들 은 매우 중요한 문제에 직면해

2 Altera Corporation Altera Corporation 3

Nios II 임베디드프로세서 제품군

오늘날의 임베디드 설계 엔지니어들

은 매우 중요한 문제에 직면해 있다: 특성, 비용, 성능 및 제품 주기 관리

측면에서의 완벽한 조화를 갖춘 프로세서를 찾는 일이 바로 그것이다. 알테라의 Nios® II 프로세서는 전체 커스

터마이제이션이 가능한 특성과 성능, 경제적인 제품 및 구현 비용, 간편한 사용성, 적용성 및 단종 위험이 없는 설계와 같은 완벽한 조건을 제공한다(그림 1 참조).

32-비트 RISC 임베디드 프로세서의 Nios II 제품군은 200DMIP 이상의 성능을 제공하며 35 센트 정도의 비용

으로 FPGA에 구현될 수 있다.소프트 코어 프로세서 로서 유연성을 갖고 있기 때문에, 귀하는다양한 시스템 컨피규레이션을 무한히 결합하여 성능과 특성, 비용 목표에 알맞게 선택할 수 있다. Nios II 프로세서를 사용하

는 설계는 보다 신속하게 제품을 출 시할 수 있게 해주

고, 제품의 수명을 더욱 연장해주며 프로세서 단종의 위험이 전혀 없다.

커스터마이제이션 가능한 특성 세트

사전-조립되는 프로세서와는 달리 Nios II 프로세서를 사용하게 되면, 설계자가 원하는 바 그대로 주변장치,메모리, 그리고 인터페이스 특성을 선택하여, 사양에 맞게 프로세서를 커스터마이제이션 할 수 있다. 더욱이 독자

적인 고유 특성을 손쉽게 통합할 수 있기 때문에 귀하

의 설계에 경쟁력을 제고할 수 있다.

컨피규레이션 가능한 시스템 성능

설계자는 현재 및 미래의 설계에 모두 적합한 충분한 성능을 가진 프로세서를 원하고 있다. 미래의 요건이 확실하지 않은 가운데, Nios II 설계자는 그들의 설계를 수정하여, 여러 Nios II CPU 들과 커스텀 인스트럭션, 또는 하드웨어 액셀러레이터를 손쉽게 추가할 수 있으며, 새로운 성능 목표를 충족할 수 있다. Nios II 프로세서를 이용하여, 알테라의 특화된 인터커넥트 테크놀러지인

Avalon™ 스위치 패브릭을 통하여 귀하의 시스템 성능

이 조정될 수 있으며 고도의 처리효율을 필요로 하는 어플리케이션에 대하여 무제한 병렬 데이터 경로들을 지원한다.

저가 솔루션 구현

프로세서를 선택할 때 설계자는 원하는 특성을 갖기 위하여 실제 원하는 것보다 더 많은 프로세서를 사용하거

나 혹은 설계자의 비용 예산 내에서 필요한 개수보다 적게 프로세서를 이용해야 되는 선택의 기로에 놓이게 된다. 저렴한 비용의 커스터마이제이션이 가능한 Nios II 프로세서를 구현하게 되면 이러한 고민이 해결될 수 있다. Nios II 프로세서를 사용하여, 적던 많던 원하는 만큼의 특성을 포함시킬 수 있으며, 35센트의 비용으로 그것들을 Cyclone™ II FPGA와 같은 알테라의 저가형 디바이스에 구현할 수 있다.또한 프로세서와 주변장치, 메모리 및 I/O 인터페이스를 하나의 FPGA에 구현함으

로써 전체 시스템 비용을 절감할 수 있다.

제품 주기 관리

제품이 성공을 거두려면, 신속한 시장 출시가 필요하고 유용성을 높이기 위하여 풍부한 특성을 갖고 있어야 하며 프로세서의 단종 위험도 없어야 한다. Nios II 임베디

드 프로세서는 수분안에 제품 컨셉에서 시스템까지 개발될 수 있다. Nios II 프로세서-기반의 시스템을 설계

하고 제작하는데 로열티가 필요 없는 영구적인 라이센

스를 제공하며 절대로 단종되지 않는다. 더욱이 FPGA에 소프트-코어 프로세서를 구현함으로써 현장에

서의 하드웨어 업그레이드가 소프트웨어 업그레이드만

큼 간편하여, 제품이 최신의 표준을 충족하고 새로운

특성을 보유할 수 있도록 해준다.

그림 1. World’s Most Versatile Processor

Features Unlimited Peripheral

Options Multi-Processor Systems Automatic

Interconnection

Performance Choice of CPU High-Performance FPGAs Custom Instructions High-Bandwidth Switch

Fabric

Cost Low-Cost FPGAs Component Reduction Reduce Inventory Costs Reduce Software

Development Cost

Life Cycle Avoid Obsolescence Maintain Competitive

Advantage Make In-Field Upgrades

Page 4: Nios II...2 Altera Corporation Altera Corporation 3 Nios II 임베디드 프로세서 제품군 오늘날의 임베디드 설계 엔지니어들 은 매우 중요한 문제에 직면해

4 Altera Corporation Altera Corporation 5

뛰어난 유연성

완전 커스터마이제이션 가능하고 재컨피규레이션 가능한 Nios II 의 특성은 현재와 미래의 제품 요건에 적합하다.

3종의 프로세서 코어

Nios II 프로세서 제품군은 3종의 코어로 구성되어 있다- 속도가 빠른 Nios II/f, 표준 Nios II/s 그리고 경제적인 Nios II/e-각각의 제품은 특정 가격 및 성능 요건에 최적화

되어 있다(표1). 3종의 코어 모두 일반 32-비트 인스트럭션 세트 아키

텍쳐를 공유하며 바이너리 코드와 100퍼센트 호환된다. 알테라의 업계 주요 툴인 Quartus® II 설계 소프트웨어에 있는 SOPC Builder를 사용하여 귀하의 시스템에 Nios II 프로세서를 간편하게 구현할 수 있다.

주변장치

Nios II 개발 키트는 그림 2에서 보는 바와 같이 일반적

으로 사용되는 주변장치와 인터페이스 라이브러리를 포함하고 있다. SOPC Builder-Ready IP (intellectual property)와 주변장치의 전체 리스트를 보려면, www.altera.com/SOPCBuilderReady를 참조하기 바란다.

또한 SOPC Builder 소프트웨어 안에 있는 interface-to-user-logic 마법사를 사용하여 고유의 독자적인 주변장

치를 구현하고, 그들을 Nios II 프로세서 시스템으로 통합할 수 있다. 다른 기성 프로세서와는 달리 SOPC Builder를 통하여 알테라의 FPGA안에 임베디드 프로세

서 컨피규레이션을 조립할 수 있으며 언제나 귀하가 원

하는 사양에 맞게 구현할 수 있다.

Avalon 스위치 패브릭

Avalon 스위치 패브릭은 다수의 동시 데이터 전송을 가능하게 해주며 뛰어난 시스템 처리 효율을 보여준다. SOPC Builder는 귀하의 시스템의 프로세서와 주변장치

의 특정 인터커넥트 요건에 최적화되도록 Avalon 스위

치 패브릭을 자동으로 만들어 준다.

전형적인 버스 아키텍쳐(그림 3)에서, 싱글 arbiter 가 버스 마스터와 슬레이브간의 통신을 컨트롤해준다. 각각

의 버스 마스터는 버스 컨트롤을 요청하면 그 후 arbiter는 버스 액세스를 싱글 마스터에게 보내준다. 만약 다수의 마스터가 한꺼번에 버스를 액세스하려고 하면, arbiter는 고정 arbitration 규칙에 따라 하나의 마스

터에게 버스 자원을 할당한다. 한번에 하나의 마스터만

이 시스템 버스와 그 자원을 액세스 할 수 있기 때문에 대역폭에 있어 병목 현상을 일으킨다.

Avalon 스위치 패브릭의 동시 멀티-마스터 아키텍쳐는 이러한 병목 현상을 제거함으로써 귀하의 시스템의 대역폭을 증가 시킨다(그림 4참조). Avalon 스위치 패브릭

그림 2. Peripherals Available for Nios II Design

Timer/Counter External Tri-State BridgeExternal SRAM Interface UARTLCD Interface Interface to User LogicJTAG UART Parallel I/OCS8900 10Base-T Interface System IDEPCS Serial Flash Controller Direct Memory Access (DMA)On-Chip ROM Serial Peripheral Interface (SPI) Compact Flash Interface (CFI) On-Chip RAMSDR SDRAM Active Serial Memory Interface LAN 91C111 10/100 Ethernet InterfacePCI DDR SDRAM CAN RNGUSB DDR2 SDRAM DES 16550 UARTRSA SHA-1 I2C10/100/1000 Ethernet MAC Floating Point Unit

그림 3. Traditional Bus Architecture

MasterMasters

SlavesUART PIO

ProgramMemory

DataMemory

Master

Arbiter

System Bus

Bottleneck

표 1. Nios II Processor Family Members

Feature Nios II /f (Fast) Nios II /s (Standard) Nios II /e (Economy)

Description Optimized for maximum performance

Faster than the fastest and smaller than the smallest first-generation Nios CPU

Optimized for minimum logic usage

Pipeline 6 Stage 5 Stage None

Multiplier 1 Cycle* 3 Cycle* Emulated in software

Branch Prediction Dynamic Static None

Instruction Cache Configurable Configurable None

Data Cache Configurable None None

Custom Instructions

Up to 256 Up to 256 Up to 256

Included in Nios II Development KitsAvailable separately as MegaCore® or Altera Megafunction Partners Program (AMPPSM) IP

* Using DSP blocks in Stratix® or Stratix II FPGAs

Page 5: Nios II...2 Altera Corporation Altera Corporation 3 Nios II 임베디드 프로세서 제품군 오늘날의 임베디드 설계 엔지니어들 은 매우 중요한 문제에 직면해

4 Altera Corporation Altera Corporation 5

을 사용하여, 각각의 버스 마스터는 자체의 전용 인터

커넥트를 갖기 때문에 이는 버스 마스터가 버스 그 자체가 아니라 공유 슬레이브에 대해서만 경쟁하게 된다

는 것을 의미한다. 부품이 추가되거나, 주변장치의 액세

스 우선순위가 바뀔 때 마다 매번, SOPC Builder는 FPGA 자원 사용을 최소화하면서 새로이 최적화된 Avalon 스위치 패브릭을 생성한다.

Avalon 스위치 패브릭은 싱글 및 다수의 마스터 시스템

을 포함하여 다양한 시스템 아키텍쳐를 지원하며 성능 최적화된 데이터 경로를 가지고 주변장치간의 끊김없

는 데이터 전송을 허용한다. 귀하의 설계에 존재하는 외부 프로세서와 주변장치는 Avalon 스위치 패브릭에 의하여 똑같이 지원된다.

커스텀 인스트럭션

커스텀 인스트럭션은 시간에 민감한 소프트웨어를 가속화해주는 CPU 인스트럭션 세트를 확대함으로써 Nios II 프로세서를 사용하는 개발자가 시스템 성능을 증가

하도록 해준다. 커스텀 인스트럭션을 사용하여, 기존의 오프-더-쉘프 프로세서로는 가능하지 않았던 방식으로 시스템 성능을 최적화할 수 있다.

Nios II 제품군의 프로세서는 최대 256개의 커스텀 인스트럭션을 지원하여 로직이나 혹은, 일반적으로 소프

트웨어상에서 다루어졌던 산술적으로 복잡한 알고리즘

을 가속시킬 수 있다. 예를 들어, 64-K바이트 버퍼에서 순환 리던던시 코드 계산을 실행하는 로직 블록은 소프

트웨어상으로 실행될 때 보다 커스텀 인스트럭션으로

서 27배 더 빠르게 동작한다(그림 5 참조). Nios II 프로

세서는 fixed 및 variable 사이클 동작을 지원하며 사용

자 로직을 커스텀 인스트럭션으로서 import하는 마법사

를 포함하고 있고 개발자의 코드에서 사용할 수 있는 소프트웨어 매크로를 자동으로 만들어 준다.

하드웨어 가속화

FPGA내에서 커스텀 코-프로세서로서 동작하는 어플리

케이션-특화된 하드웨어 액셀러레이터가 추가됨으로써 대형 데이터 블록이 CPU 동작과 동시에 처리될 수 있다

(그림 6). 그림 5에서 볼 수 있는 순환 리던던시 코드 예를 사용하여, 64-K바이트 버퍼에 대한 처리가 하드웨어 액셀러레이터를 사용하여 소프트웨어보다530배 더 빠르게 진행될 수 있다. SOPC Builder는 개발자에게 그들

의 가속 로직 및 DMA 채널을 시스템에 추가할 수 있도

록 해주는 import 마법사를 포함하고 있다.

그림 4. Avalon Switch Fabric Architecture

Slaves

Masters

ProgramMemory I/O

CustomAcceleratorPeripheral

I/OProgramMemory

DataMemory

Master Master Master

DataMemory

Avalon Switch Fabric

Arbiter Arbiter

그림 5. Nios II Custom Instructions

Nios II Embedded ProcessorOptional FIFO2, Memory

& Other Logic

+-

&

<<>>

Out

result

A

dataa

dataa

Nios IIALU1

B

databCustomLogic

32

datab 32

n 8

a 5

b 5

c 5

clkclk_enresetstart

그림 6. Nios II Hardware Accelerator

ProgramMemory

ProgramMemory

Processor Accelerator

DataMemory

Avalon Switch Fabric

Arbiter Arbiter

DM

A

DM

A

result

stall

32

Parameterized

Multi-Cycle

Combinational

Notes: 1 ALU: arithmetic logic unit 2 FIFO: first-in first-out

Page 6: Nios II...2 Altera Corporation Altera Corporation 3 Nios II 임베디드 프로세서 제품군 오늘날의 임베디드 설계 엔지니어들 은 매우 중요한 문제에 직면해

6 Altera Corporation Altera Corporation 7

디바이스 제품군 지원

알테라의 주요 제품군의 모든 디바이스에서 Nios II 프로세서를 신속하고 간편하게 구현할 수 있다. 알테라는 다양한 고성능, 고집적도 또는 저가형 디바이스를 통하

여 임베디드 설계에 맞는 FPGA를 제공하고 있다. 비교

적 많은 물량의 어플리케이션에 대해서는 로열티나 추가적인 라이센스 비용 없이 HardCopy® structured ASIC에서 Nios II 프로세서를 구현할 수 있다. 그림 7은 알테라의 주요 디바이스 제품군에 대하여 Nios II CPU 구현의 성능과 비용을 비교하고 있다.

어플리케이션다양한 어플리케이션에서 Nios II 프로세서가 사용되고 있다. 그림8을 보면 그에 대한 예가 소개되어 있으며

www.altera.com에서 고객의 사례를 참조할 수 있다.

IP 솔루션

알테라와 알테라의 회원사들은 Nios II 프로세서와 함께 사용될 수 있는, 다음과 같은 다양한 SOPC Builder-Ready IP들을 공급하고 있다:

메모리 인터페이스

통신 주변장치

DSP기능

외부 디바이스 인터페이스

알테라의 IP 포트폴리오에는 알테라와 AMPP 회원사에

서 제공하는 200여종 이상의 코어들이 있다. 설계자가 타겟하고 있는 FPGA 아키텍쳐에 대하여 최적화되어 있는 IP를 사용하면 기본 기능들을 다시 설계할 필요가 없으며 따라서 귀하의 제품을 보다 차별화하고 완벽을 기하는데 중점을 둘 수 있다.

IP 툴 및 특성

알테라는 IP 툴벤치 툴 바인 MegaWizard® 플러그-인 매개변수화 툴과 OpenCore® 평가 버전을 통하여 플러그-앤-플레이 IP 업계의 선두주자이다. 설계자는 이러한 특성을 사용하여 시스템에 IP를 신속하게 통합하고, 커스

터마이징할 수 있으며 평가 기회를 가진다.

IP 툴벤치

IP 툴벤치를 사용하여 손쉽게 자료를 살펴보고, 매개변수를 규정하거나, 제3자 툴을 설정하

고, IP 코어를 설계에 통합하는

데 필요한 모든 파일들을 만들 수 있다. 귀하는 Quartus II 소프

트웨어에서 IP 툴벤치를 작동시

킬 수 있다. IP 툴벤치는 그림

9에서 보는 바와 같다. 그림 8. Nios Processor Applications

ConsumerSet-top box Plasma display HDTV DVD player

CommunicationsBroadband fixed wireless equipment Mid- to low-end

router Wireless LAN access point DSL router

AutomotiveSoftware radio receiver Telematics/entertainment

Gateway controller

Computers & Storage DevicesPrinter Storage server

IndustrialFactory automation Process control Network test

그림������������������������������������������������������������

���

���

���

���

��

��������� ���� ���� ���� ����

���������������������

����

���

����

���

���

��

��

�������

����������

���������������������������

����������������

그림 9. IP Toolbench

Page 7: Nios II...2 Altera Corporation Altera Corporation 3 Nios II 임베디드 프로세서 제품군 오늘날의 임베디드 설계 엔지니어들 은 매우 중요한 문제에 직면해

6 Altera Corporation Altera Corporation 7

MegaWizard 플러그-인

알테라의 MegaWizard 플러그-인 매개변수

화 툴은 단독 IP 툴벤치로 부터 혹은 Quartus II 내부의 SOPC Builder 나 DSP Builder 개발 툴에서 가동시킬 수 있다. MegaWizard 플러

그-인은 GUI를 통하여 설계자가 IP 코어를 시스템 요건에 적합하게 커스터마이징할 수 있도록 해준다. 그림 10에서 MegaWizard 플러그-인의 예를 볼 수 있다.

OpenCore 및 OpenCore 플러스 IP 평가 기능

OpenCore 평가 기능은 설계자로 하여금 Quartus II 설계 소프트웨어에서 IP 코어를 무료로 평가해볼 수 있게 해준다. 구매결정을 내리기 전에 귀하의 시스템의 특성, 크기, 속

도와 같은 IP 코어의 특성들을 모두 평가해볼 수 있다.

OpenCore 플러스 평가 기능은 OpenCore 평가 기능을 한단계 발전시킨 것이다. 알테라의 IP 혹은 AMPP 코어를 포함하고 있는 설계에 대하여 IP 기능 시뮬레이션 모델과 시간-제한

이 되어 있는 FPGA 프로그래밍 파일을 생성하게 해준

다. OpenCore 플러스 하드웨어 평가 기능을 사용하여, 구매 결정을 내리기 전에 보드-레벨의 설계 검증을 실행하여 볼 수 있다. 알테라의 모든 IP 코어와 일부 AMPP사의 코어들이 OpenCore 플러스 기능을 지원하고 있다.

IP 설계 플로우

그림 11은 알테라의 IP를 평가하고 구매하는 것과 관련

된 권장 설계 플로우를 보여주고 있다. 보다 자세한 사항에 대해서는 알테라의 IP MegaStore™ 웹 사이트 www.altera.com/ipmegastore 를 방문하기 바란다.

그림 10. MegaWizard Plug-In

그림��������������������������

������������������������������

����������������������������

�������������������������������������������

��������

���

��������

�����������������������������

�������������������������������������������

����������������������������������

��������������������������������������������

Page 8: Nios II...2 Altera Corporation Altera Corporation 3 Nios II 임베디드 프로세서 제품군 오늘날의 임베디드 설계 엔지니어들 은 매우 중요한 문제에 직면해

8 Altera Corporation Altera Corporation 9

개발 툴 세트 완비

알테라의 총체적인 하드웨어 및 소프트웨어 툴은 설계

자로 하여금 강력한 Nios II 프로세서 시스템을 수분안

에 구축할 수 있도록 해준다. 그림 12는 Nios II 임베디

드 프로세서 설계의 전체 플로우를 보여준다. 계획단계

(맨위)에서부터 하드웨어 및 소프트웨어 구현을 지나 디버깅까지, 알테라는 귀하가 신속하게 제품을 출 시 하는데 필요한 모든 툴을 제공하고 있다.

하드웨어 설계

알테라는 SOPC Builder 시스템 개발 툴, Quartus II 설계 소프트웨어, ModelSim®-알테라 소프트웨어, SignalTap® II 임베디드 로직 분석기를 비롯하여 하드웨

어 설계에 필요한 모든 툴 세트들을 제공한다.

SOPC BuilderNios II 프로세서-기반의 시스템을 구축하기 위한 하드

웨어 설계는 SOPC Builder 시스템 개발 툴을 사용하여 시스템을 정의하고, 컨피규레이션하며 생성시켜준다. Quartus II 설계 소프트웨어 안에서 작동시킬 수 있는 SOPC Builder는 직관적 마법사로 구성된 GUI(graphical user interface) 특성을 제공하며 따라서 귀하는 시스템-온-어-프로그래머블-칩(SOPC) 설계를 만들고, 컨피규레

이션하며 생성할 수 있다. 그것은 여러 요소들을 하나

의 시스템으로 통합하는데 걸리는 시간을 단축하여 준다. 그림 13은 직관적인 SOPC Builder GUI 화면을 보여

준다.

Quartus II알테라의 Quartus II 설계 소프트웨어의 테크놀러지 리더쉽은 뛰어난 성능과 간편

한 사용성을 제공한다. Quartus II 소프트

웨어를 사용하여, 귀하는 알테라의 디바

이스에서 Nios II 설계를 손쉽게 설계하고 최적화하고 검증할 수 있다.

귀하가 설계를 시뮬레이션할 준비가 되면, SOPC Builder 는 VHDL및 Verilog 시뮬레이션 모델을 생성한다. 귀하

는 SOPC Builder와 Nios II IDE(integrated development environment)에 의하여 만들어진 자동 생성 시뮬레이션 환경을 사용하여, 손쉽게 Nios II 프로세서-기반의 시스

템을 시뮬레이션할 수 있다. Quartus II 소프트웨어를 구매하면 Nios II 설계를 시뮬레이션하는데 사용될 수 있는 ModelSim-알테라 소프트웨어를 제공한다.

SignalTap II 설계 내부의 액티브 프로세스를 보고 싶어

하는 엔지니어들을 위하여 실제 시스템 조건하에서 최종 테스트벤치가 정상적인 속도로 동작된다. 그러나 FPGA 아키텍쳐안에 숨겨져 있는 노드를 액세스하기가 어렵다.

SignalTap II 임베디드 로직 분석기는 JTAG(Joint Test Action Group) 포트를 통하여 FPGA 설계내부의 거의 모든 노드에 대하여 액세스를 제공함으로써 이러한 문제

를 없애주며 따라서 시스템 내부에서 시스템 속도로 설계 노드를 볼 수 있다.

그림 12. Nios II Embedded Processor Development Flow

SOPC Builder

Targets

Quartus II Nios II IDE

Hardware Software

AutomaticSoftware

Generation

System LibraryHeader FileApplication Template

Define System

ProcessorsPeripherals

MemoryInterfaces

RTL Simulation

Instruction Set Simulator

Target Hardware

RTL System

Description

SystemTest Bench

JTAG DebuggerFPGA Configuration

Software Development

EditCompileDebug

Generate FPGA Configuration

SynthesizePlace & Route

CompileDownload

그림 13. SOPC Builder GUI

Page 9: Nios II...2 Altera Corporation Altera Corporation 3 Nios II 임베디드 프로세서 제품군 오늘날의 임베디드 설계 엔지니어들 은 매우 중요한 문제에 직면해

8 Altera Corporation Altera Corporation 9

DSP Builder알테라의 DSP Builder 개발 툴을 사용하여, 귀하는 Nios II 프로세서에 대한 커스텀 코-프로세서를 설계할 수 있다. DSP Builder는MathWorks사의 MATLAB및 Simulink 시스템-레벨의 설계 툴의 알고리즘 개발, 시뮬레이션 및 검증 기능을 HDL(hardware description language) 합성, 시뮬레이션 및 알테라의 개발 툴과 통합함으로써 DSP 설계 주기를 단축하여 준다(그림 14참조).

DSP Builder는 bit- 및 cycle-accurate Simulink 블록을 포함하고 있으며, 이는 산술 혹은 저장 기능과 같은 기초 동작들을 커버해준다. 귀하는 DSP Builder-Ready MegaCore 기능을 DSP Builder 모델에 import함으로써 복잡한 기능을 통합할 수 있다. DSP Builder에 만들어진

DSP 설계는 SOPC Builder를 사용하여 코-프로세서로서 손쉽게 통합될 수 있다.

소프트웨어 설계

소프트웨어 설계 플로우를 가능한 한 단순화 하려면, 편집, 구축 및 디버깅 프로그램과 같은 모든 소프트웨

어 개발 작업을 Nios II IDE내에서 완성할 수 있다. Nios II IDE의 일환으로써, 알테라는 소프트웨어 개발 툴의 추가를 위하여 운용 시스템 및 미들웨어 제공 회사들과 협력관계를 맺고 있다.

Nios II 통합 개발 환경

확장 가능형 오픈 Eclipse IDE 프로젝트와 Eclipse C/C++ 개발 툴 프로젝트에 기반을 두고 있는 Nios II IDE는 Nios II 임베디드 프로세서 제품군에 대한 주요 소프트

웨어 개발 툴이다. 귀하는 편집, 컴파일, 다운로드, 디버

깅 및 플래시 프로그래밍과 같은 소프트웨어 개발 작업

을 Nios II IDE내에서 할 수 있다. 그림 15에서 보는 바와 같이 Nios II IDE는 모든 Nios II 프로세서 시스템에 적합

한 동일한 개발 플랫폼을 제공한다. PC와 알테라 디바

이스 그리고 JTAG 다운로드 케이블만 가지면 Nios II 프로세서-기반의 시스템을 개발하고 디버깅하는데 필요

한 모든 것을 갖고 있는 셈이다.

JTAG 디버깅 모듈

Nios II 아키텍쳐는 호스트 PC로부터 프로세서를 원격 제어하는 온-칩 에뮬레이션 특성을 제공하는 JTAG 디버깅 모듈을 지원한다. Nios II IDE는 하나 이상의 Nios II 프로세서의 JTAG 디버깅 모듈과 통신할 수 있으며 따라서 귀하는: 프로그램을 메모리로 다운로드할 수 있다.

프로그램 실행을 가동하고 정지시킬 수 있다.

Breakpoint와 watchpoint를 설정할 수 있다.

레지스터와 메모리를 분석할 수 있다.

실시간 실행 트레이스 데이터를 수집할 수 있다.

디버깅 모듈은 알테라의 모든 디바이스에 구축되어 있는 JTAG 회로로 연결되고 다운로드 케이블을 통하여 호스트 PC에 연결된다(그림16참조). 또한 여러 업계-표준

의 회사에서 Nios II 프로세서에 대한 디버깅을 지원하

고 있다.

DSP Builder &MATLAB/Simulink

DesignEntry

SystemSimulation

RTLGeneration

RTLSynthesis

RTLSimulation

Creates Test Vectors

DSP Builder &MATLAB/Simulink

DSP Builder &MATLAB/Simulink

DSP Builder &MATLAB/Simulink

Debug withSignalTap II

Downloadto Board

SystemIntegration

DSP Builder &MATLAB/Simulink

DSP Builder &MATLAB/Simulink SOPC Builder

그림 14. DSP Design Flow Overview

그림 15. Nios II IDE

그림 16. Nios II JTAG Debug Module

Avalon Switch Fabric

JTAG DebugModule

Nios II Processor

Altera FPGA

Avalon Port

JTAGUART

Avalon Port Avalon Port

On-ChipMemory

DebugData

CharacterStream

Debugger

JTAG TerminalJTAGHub

Host PC

Altera Download

Cable

Built-InJTAG Controller

Page 10: Nios II...2 Altera Corporation Altera Corporation 3 Nios II 임베디드 프로세서 제품군 오늘날의 임베디드 설계 엔지니어들 은 매우 중요한 문제에 직면해

10 Altera Corporation Altera Corporation 11

인스트럭션 세트 시뮬레이터

Nios II 인스트럭션 세트 시뮬레이터(ISS)는 타겟 하드웨

어 플랫폼이 준비되기 전에 설계자가 프로그램 개발을 시작할 수 있도록 해준다. IDE는 실제 하드웨어 타겟에

서 구동하는 것만큼 쉽게 ISS에서도 프로그램을 동작할 수 있도록 해준다.

플래시 프로그래머

또한 Nios II 프로세서를 사용하는 많은 설계에서는 플래시 메모리가 보드에 내장되어 있다. FPGA에 연결되

어 있는 모든 CFI-준수형 플래시 디바이스는 Nios II IDE 플래시 프로그래머를 사용하여 프로그램될 수 있다. 또한 그림 17에서 보는 바와 같이 Nios II IDE 플래시 프로

그래머는 FPGA에 연결되어 있는 알테라의 시리얼 컨피

규레이션 디바이스를 프로그램할 수 있다. Nios II IDE 플래시 프로그래머는 Nios II 개발 키트에서 제공되는 모든 보드와 동작되도록 사전 컨피규레이션 되어 있으

며 커스텀 하드웨어로 손쉽게 이동된다.

소프트웨어 Template프로젝트 설정 마법사뿐만 아니라, Nios II IDE는 프로젝

트 Template의 형태로 소프트웨어 코드 예제를 제공하

며, 시스템을 보다 빨리 구축할 수 있도록 해준다.

각각의 Template는 소프트웨어 파일과 프로젝트 설정의 모음이다. 귀하는 프로젝트 디렉토리에 코드를 입력하

거나 혹은 파일을 프로젝트에 import함으로써 자기자신

의 소스 코드를 프로젝트에 추가할 수 있다. 그림 18은 소프트웨어 프로젝트 template 의 예를 보여준다.

시스템 소프트웨어

Nios II IDE는 귀하가 시스템 소프트웨어를 사용하여 시스템을 신속하게 커스터마이징 할 수 있도록 해준다. 시스템 소프트웨어("소프트웨어 요소"로 알려지기도 한)를 가지고 귀하는 특정 대상 하드웨어에 대하여 귀하

의 시스템을 힘들이지 않고 간편하게 컨피규레이션할 수 있다.

HAL(Hardware Abstraction Layer)

HAL(Hardware Abstraction Layer) 시스템 라이브러리는 프로그램이 기본 하드웨어와 통신하도록 단순 디바이

스 드라이버 인터페이스를 제공하는 간편한 런타임 환경이다. SOPC Builder와 Nios II IDE가 긴밀히 통합되기 때문에, HAL 시스템 라이브러리는 Nios II 프로세서-기반의 설계용 보드 지원 패키지로서 사용되도록 자동으

로 생성될 수 있다.

MicroC/OS-II

실시간 kernel인 Micrium사의 MicroC/OS-II 가 Nios II 개발 키트와 함께 공급되며, 완전한 소스 코드, 참조 매뉴

얼 그리고 무료 개발자 라이센스가 포함된다. 보드에 귀하의 설계를 마이그레이션하고자 할 때, 공급자의 라이센스를 구매하면 된다. 공급자의 라이센스에는 세가지 유형의 개발자 라이센스가 있는데 MicroC/OS-II에 대하여 1년간 무제한으로 설계할 수 있고 그 후에는 버그를 수정하고 사소한 변경을 위하여 구축되어진 설계

를 영구적으로 지원할 수 있는 subscription 기간의 라이

센스가 제공된다.

TCP/IP 스택 Nios II 개발 키트는 MicroC/OS-II 어플리케이션과 같이 동작하도록 만들어졌으며 스탠더드 UNIX 소켓 API를 구현하는 오픈-소스 lwIP TCP/IP 스택과 함께 공급된다. 이 소프트웨어는 완전한 자료, 참조 설계와 함께 소스 코드로서 제공되며 알테라로부터의 기술 지원이 이루

어진다.

리눅스

네트워크 프로토콜 스택, 파일 시스템 및 많이 사용되

고 있는 다른 디바이스 드라이버를 가진 완전한-특성의 운용 시스템을 필요로 하는 리눅스 설계자는 www.niosforum.org로부터 Nios II 프로세서 제품군에 대한 오픈 소스 µCLinux 포트를 다운로드 받을 수 있다.

그림 17. Transmitting Flash Content to the Flash Device

Altera FPGA

Target Board

AlteraDownload Cable

FlashProgrammer

Design

CFI FlashDevice

Host PC

Flash Content

Flash Content

그림 18. Software Project Templates

Page 11: Nios II...2 Altera Corporation Altera Corporation 3 Nios II 임베디드 프로세서 제품군 오늘날의 임베디드 설계 엔지니어들 은 매우 중요한 문제에 직면해

10 Altera Corporation Altera Corporation 11

세계 최상의 프로세서 Nios II 프로세서에 대하여 보다 자세한 사항을 알고 싶다면 알테라의 웹사이트(www.altera.com/nios2)의 Nios II 홈페이지를 참조하기 바란다.

온라인 데모 관람

상세한 기술 자료 참조

Nios II 프로세서와 Nios II IDE의 평가버전을 다운로드

최신의 Nios II 개발 키트를 검색

온라인 혹은 현장 교육 과정에 등록

다음 단계로의 준비가 되어 있다면 개발 키트를 주문하거나 영업 지사에 문의하기 바란다. www.altera.com을 방문하면 알테라의 제품이 귀하

의 설계에 어떤 도움이 될 수 있을지 정보를 구할 수 있다.

Nios II 개발 키트

알테라와 그 회원사는 설계자가 자신의 시스템에 적합한 프로세서 설계를 시작하려고 할 때 필요한 모든 것을 제공

하는 개발 키트를 공급하고 있다- 전기 스위치만 켜면 된다

. Nios II 개발 키트를 가지고 있다면 오늘 당장 설계를 시작

하는데 필요한 모든 것을 갖고 있는 셈이다: 문서 자료에서

부터 다운로드 케이블까지, 보드에서부터 설계 소프트웨어

까지. 하나의 키트에 포함되어 있는 아이템은 그림 19와 같다.

보다 자세한 정보를 알고 싶다면, 알테라의 개발 키트 웹 사이트 www.altera.com/devkits 를 참조하기 바란다.

그림 19. Nios Development Kit, Cyclone Edition

Page 12: Nios II...2 Altera Corporation Altera Corporation 3 Nios II 임베디드 프로세서 제품군 오늘날의 임베디드 설계 엔지니어들 은 매우 중요한 문제에 직면해

Copyright © 2004 Altera Corporation. All rights reserved. Altera, the stylized Altera logo, specific device designations, and all other words and logos that are identified as trademarks and/or service marks are, unless noted otherwise, the trademarks and service marks of Altera Corporation in the U.S. and other countries. All other trademarks are the property of their respective owners and may be registered in certain jurisdictions. Altera products are protected under numerous U.S. and foreign patents and pending applications, mask work rights, and copyrights. GB-NIOSII-1.0-KR

Altera Asia Pacific

Altera Hong Kong Office:2102, Tower 6, The Gateway, Harbour City, 9 Canton Road, Tsimshatsui Kowloon Hong KongTel: (852) 2945 7000Fax: (852) 2487 2620

Altera Korea Distributors

Korea

MJL Technology, LTDMJL Bldg. 204-5 Nonhyun-1 dong,Kangnam-KuSeoul 135-011KoreaTel: (82-2) 6200 2000Fax: (82-2) 6200 2345

Altera Korea Office:Youndang Bldg Suite 501 144-23 Samsung-dong, Kangnam-KuSeoul 135-090KoreaTel: (82-2) 538 6895Fax: (82-2) 538 6896

Uniquest9th Floor Dongsung Bldg. 158-24,Samsung-dong, Kangnam-KuSeoul 135-090KoreaTel: (82-2) 3452 6622Fax: (82-2) 3452 6623