태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

이 보고서는 Texas Instruments 사의 TMS320F281x TMS320F280x 사이의 차이를 설명한다. 단 그 범위는 TMS320F281x TMS320F280x의 서로 다른 점을 중점적으로 다룰 것이고 아주 상세한 설명보다는 전체적인 차이점을 한눈에 볼 수 있도록 하였다.  TMS320F281x(이하 281x) TMS320F280x(이하 280x)는 모두 Embedded Control Application을 위한 Texas Instruments TMS320F28x DSP에 포함된다. 280x 281x에 없는 진보된 주변장치를 가지고 있다. 이 진보된 주변장치는 엔지니어가 Motion Control이나 Motor Control 등 제어에 관련된 문제를 효과적으로 해결할 수 있도록 해준다.

 

 


패키지 및 핀 배치(Package & Pinout)

281x 280x는 패키지나 핀 배치가 호환되지 않는다. 따라서 281x를 이용한 환경에서 280x

로 바꾸려고 할 때에는 변화된 패키지나 핀 배치에 대응하기 위해 시스템(Board) Layout

바꾸어야 한다.

 

 

TMS320F2812 (PGF 패키지: 176 LQFP)

 

 

  

TMS320F2812 GHH 패키지: 179 MicroStar BGA Package

 

 

 

 

TMS320F2811 PBK 패키지: 128 LQFP

  

  

 

TMS320F280x (GGM 패키지: 100 MicroStar BGA Package)

  

 

  

TMS320F280x PZA 패키지: 100 LQFP

 

 

  

 

구동 전압과 클럭(Operating Freq. & Power Supply)

TMS320F281x 의 경우

최대 150MHz로 구동가능. 이때 Core에는 1.9V를 공급해야 함.

Core 1.8V를 공급할 시에는 최대 135MHz로 구동가능.

I/O 입력 전압: 3.3V

*클럭입력전압: CPU Core 전압 (1.9V)

 

TMS320F280x 의 경우

최대 100MHz로 구동가능. Core 공급전압 1.8V로 고정.

I/O 입력 전압: 3.3V

*클럭입력전압: I/O 전압 (3.3V) - 전압 변환 회로 불필요.

 

 

전원 인가 순서

TMS320F281x 의 경우

Core I/O 전원 인가 순서에 따라, 불안정한 순간 발생.

반드시 I/O 전원을 먼저 인가 후 Core 전원 인가.

 

TMS320F280x 의 경우 

전원 인가 순서로부터 자유로워짐.

 

 


메모리 맵

280x 메모리 맵의 가장 큰 특징은 기본적으로 조각나 있는 내부 램을 하나로 합친 것이다.  또한 280x는 기존의 281x와의 호환성을 위해 281x의 내부 램 주소와 동일하게 설정할 수 있는 옵션(Dual Mapped Address)을 가지고 있다. 아래의 < 4-1> 280x 281x의 내부 램 주소의 차이를 보여준다.

   

[ 4-1] 램 주소할당 비교

 

 

위의 < 4-1>에서 볼 수 있듯이 280x Dual Mapped Address를 가짐으로써 281x와 호환성을 갖지만 모든 280x 프로세서가 위와 같은 내부 메모리 구조를 가지고 있지는 않다. 아래는 모델에 따른 내부 메모리의 크기 및 유무를 보여준다.

   

[ 4-2] 내부 램의 크기 및 종류 비교

  

위의 < 4-2>를 보면 280x 프로세서 그룹에서 2808을 제외한 2806, 2801 모델에서 H0 영역이 제외된 것을 볼 수 있다. L1, L0 영역이 코드 보안 영역(Code Security)이기 때문에 H0영역을 줄인 것으로 보인다. H0 영역은 상당히 큰 크기를 가지고 있어 이를 제거하여 가격의 차이를 확실히 둘 수 있다.

 

내부 플래시 메모리 크기

  

[ 4-3] 플래시 메모리의 크기 비교

  

 

외부 메모리 인터페이스

281x 에만 외부 메모리 인터페이스가 존재한다. 280x는 외부 메모리를 사용할 수 없다.

 

CMOS ROM 제품

281x, 280x 모두 대량 양산 제품의 원가 절감을 고려한 CMOS ROM 제품이 나와있다. , 마스킹 요금을 1만개당 12,000불 지불해야 한다.

 

 

부트 모드

H0 의 제거로 280x DSP에는 H0로의 부팅모드가 존재하지 않는다. 대신 M0 영역으로의 부트모드가 존재한다. 또한 새롭게 I2C CAN 을 통한 부트모드가 추가 되었다.

 

TMS320F281x 부트모드

 

[ 5-1] 281x의 부트모드

 

 

TMS320F280x 부트모드

  

[ 5-2] 280x의 부트모드

 

 

클럭 및 시스템 컨트롤(Clock & System Control)

레지스터 변경 

 

[ 6-1] 280x에서 변화된 레지스터

  

280x DSP에서 전반적으로 클럭 제어 시스템이 강화되었음을 볼 수 있다. (XCLK - XCLKOUT핀의 제어, PLLSTS - PLL 상태를 알려주는 레지스터로 PLL Lock 되었는지 알 수 있다) 새롭게 진보된 타이머 회로의 추가로 인해 주변회로 클럭 공급 제어 레지스터(PCLKCR1)가 하나 더 추가되었다. 또한 저 전력 관련 레지스터(GPIOPLMSEL)가 보강되었다.

 

입력 오실레이터

281x의 경우는 Core 전압 레벨의 입력이 필요하다. 따라서 외부에 3.3V 오실레이터가 사용되면 내부에 보내 지기 전에 Level Shift가 필요하다. 하지만 280x의 경우는 I/O 전압 레벨을 사용함으로 이러한 작업이 필요 없다. 280x에는 오실레이터 클럭 분실 감지 회로가 탑재되어 있다. 따라서 입력 클럭 분실 시 limp 모드로 전환되게 된다.

 

※ limp 모드 중에 클럭 시스템을 다루기 위해서는 각별한 주의가 필요하다.  보다 자세한 사항에 관한 것은 280x System Control and Interrupts 매뉴얼(SPRU712A) 46페이지 참조

 

PLL 안정화 시간

281x에는 PLL 상태를 알려주는 비트가 없어서 단순히 소프트웨어적으로 일정시간 지연을 제공해야 한다. 하지만 280x에는 PLL의 상태를 알려주는 비트(PLLSTS)가 있어서 PLL Lock 되었는지를 알 수 있고, 이 비트가 Lock을 알려줄 때까지 무한 루프를 돌리면 된다.  281x에서는 XF_PLLDIS의 상태에 따라 리셋 후 PLL Bypass가 가능했다. 하지만 280x에서는 XF_PLLDIS가 없으므로 소프트웨어적으로 PLL Bypass 모드를 제공해야 한다.

 

* 280x에서 PLLCR 변경 순서:

    입력 클럭에 문제가 있는지 반드시 먼저 점검한 후, PLL 변경

    1. 오실레이터 클럭 분실 감지회로 OFF.

    2. PLLCR 레지스터 변경.

    3. PLL Lock될 때까지 기다림.

    4. 오실레이터 클럭 분실 감지회로 ON.

 
주변회로 클럭 공급 결정 레지스터

280x에는 281x에 비해 더욱 더 진보되고 많은 주변회로를 탑재하고 있기에, 레지스터가 하나 더 추가(PCLKCR1) 되었다.

 

XCLKOUT

280x에서 XLKOUT 핀은 SYSCLKOUT의 분주된 클럭을 출력한다.  XLKOUT의 디폴트 출력은 시스템 클럭의 1/4. 100MHz일 때, 25MHz.

 

 

[ 6-2] XCLK 레지스터 상세설명

  

저 전력 모드 Standby, Halt -> Wake Up: (GPIOLPMSEL 레지스터) 280x DSP 에서는 어떤 GPIO핀이라도 Wake-up 신호를 받아들일 수 있다.

 

 

주변장치(Peripherals)

280x DSP에는 281x와는 다른 모습의 주변장치들이 탑재되어 있다. 그 중에는 기존의 장치들

과의 호환성을 유지하면서 기능이 추가되거나 새롭게 바뀐 것도 있고, 완전히 새롭게 추가된

기능들도 있다.

 

제어관련 주변장치(Control Peripherals)

281x Event Manager(EV) 모듈은 원래 240x DSP를 위해 개발되었다. 280x DSP에서는 이 모듈이 완전히 제거되었다. 대신 이 기능을 대체하는 더욱 진보된 장치들이 추가되었다.

 

Enhanced Pulse Width Modulator (ePWM) Module

ePWM 모듈은 상업과 공업 분야 모두에서 전원과 관련된 제어시스템에 이용된다. 이 모듈은 디지털 모터제어와 스위치 방식의 파워 컨트롤, 무정전 전원장치 또는 다른 형태의 전원변환을 위한 기능을 가지고 있다.  280x에 포함된 이 모듈들은 서로 동기화되어 있어 같은 목적을 위해 동작할 수도 있고 필요에 따라 독립된 시스템을 위해 각각이 따로 동작할 수도 있다.

 

아래의 < 7-1> 2808 ePWM 모듈과 281x Event Manager(EV) 모듈을 비교한 것이다.

 

 

 

[ 7-1] ePWM vs EV

  

< 7-1>을 보면 281x에서 Event Manager 라는 이름아래 통합되어 있던 PWM, CAP, QEP, Timer 장치들이 280x에서는 각각의 특성이 강화되어 서로 분리되어 있음을 볼 수 있다. 전반적으로 281x에 비해 280x에서 주변장치들이 더욱 진보되었음을 알 수 있다.

 

Enhanced Capture (eCAP) Module

외부 이벤트의 정확한 타이밍이 중요한 상황에서 eCAP 모듈은 필수적이다. 이 모듈은 Capture로 사용되지 않을 때 한 채널의 PWM을 생성하는 데 이용된다. 아래의 < 7-2> 2808 eCAP 모듈과 281x EV(CAP)모듈을 비교한 것이다.

  

[ 7-2] eCAP vs EV(CAP)

 

 

Enhanced Quadrature Encoded Pulse (eQEP) Module

고성능의 동작, 위치 제어 시스템에서 위치와 방향, 회전하고 있는 장치로부터의 속도 정보 등을 얻기 위해 eQEP 모듈이 사용된다. < 7-3> eQEP 281x EV 모듈에 포함된 QEP를 비교하고 있다.

  

[ 7-3] eQEP vs EV(QEP)

 

 

내장 IC BUS(Inter-IC Bus, I2C)

기존의 281x에는 없는 I2C 모듈이 280x에 새롭게 추가되었다.

 

ADC 모듈(Analog-to-Digital Convertor)

281x ADC 모듈과 280x ADC 모듈은 다음과 같은 차이점을 가지고 있다.

 

 
l  Ref/RefM 캐패시터 : 10 on 281x to 2.2 on 280x(비용의 절감과 소형화가 그 목적)
l  RESET 저항: 24.9 on 281x to standard 22 5% on 280x
l  External reference option reduced to one pin, 2.048V standard reference on 280x
l  2개의 메인 Power pin은 아날로그 블록을 위해 절반 정도의 파워로 감소

-> 3.3V node on 281x to 1.8V on 280x

l  최대 샘플링 속도의 변화, Max 6.25 MSPS (281x ADC의 절반수준)
l  Gain Error 감소, +/-5% on 281x to +/-1.5% on 280x
l  Offset 변경 레지스터의 추가(OFFTRIM), ADC결과의 offset을 효과적으로 변화가능.
l  새로운 인터럽트 소스가 추가됨(SEQ1, SEQ2 Interrupt),

-> 따라서 사용자는 ADC 인터럽트 혹은 추가된 SEQ1, SEQ2 인터럽트를 선택가능.

 

Code Security Module(CSM)

이 부분은 변화되지 않았다. 기존의 281x에서와 같이 플래시, OTP L0/L1 SARAM 블록을 보호한다. 280x에서 L0, L1의 두 가지 Mapping 모드를 모두 보호하기 위해 약간 수정되었다. CSM 패스워드는 여전히 플래시의 [0x37 7FF8 - 0x 3F 7FFF] 으로 128bit 암호화 수준을 제공한다.

 

범용 입출력(General Purpose I/ O, GPIO)

281x에 비해 280x에서는 GPIO 핀에 더 많은 주변장치를 MUX를 통해 연결해 놓음으로써 사용자로 하여금 선택에 의해 더욱더 응용의 폭을 넓힐 수 있도록 하고 있다.

 

 

l  GPIO Port

281x에서 GPIO 신호는 16bit로 구분, 할당되어 있었다. 280x에서는 32bit Port에 할당되어 있고 Port A GPIO0 - GPIO31 까지가 Port B에는 GPIO32 - GPIO34 가 할당되어 있다. 또한 GPIO Control 레지스터와 Data 레지스터가 16bit access 만이 가능한 Peripheral frame2에서 16bit 동작뿐만 아니라 32bit 동작 또한 고려된 Peripheral frame 1으로 이동하였다.

 

l  GPIO MUX Register

280x에서 GPIO MUX 회로는 고도의 주변장치 Multiplexing을 위해 재설계되었다. GPIO 핀은 I/O 토글 기능 외에도 최대 3개의 독립적인 주변장치 신호를 송수신 할 수 있도록 되어 있다.(GPIO MUX 레지스터는 총 2)

 

l  GPIO Qualification

280x에서는 입력신호의 자질을 선택 가능한 3가지 옵션으로 명시 할 수 있다.

-> SYSCLKOUT 만에 대한 동기화, (reset시 기본)

-> Qualification 기능을 통해 입력신호의 자질을 검사,

Sampling window size: 6 samples fixed on 281x to 6 or 3 samples on 280x

-> 동기화 안함, (핀의 입력이 주변장치에 의한 입력일 때 유용하다.)

 

l  Internal Pullup Configuration

281x에서 GPIO 핀의 내부 Pullup 상태는 하드웨어적으로 고정되어 있지만 280x에서는 이를 사용자가 선택할 수 있다.

 

l  External Interrupt Signal Selection

281x에서는 XINT1, XINT2, XNMI 등의 외부 인터럽트 신호가 고정되어 있었지만 280x에서는 GPIOXINT1SEL, GPIOXINT2SEL, GPIOXNMISEL 레지스터의 설정을 통해 GPIO0 - GPIO31중 어떠한 핀이라도 외부 인터럽트를 위해 사용될 수 있다.

 

l  Low-Power Mode Wake-up Signal Selection

외부 인터럽트의 경우와 마찬가지로 외부 Wake-up 신호에 대한 응답을 위해 Port A에 존재하는 어떤 핀(GPIO0 - GPIO31)이라도 사용될 수 있다.(GPIOLPMSEL)

 

변화되지 않은 주변장치(Unmodified Peripherals)

SPI(Serial Peripheral Interface), SCI(Serial Communication Interface) 281x 280x가 기능적으로 동일하다. eCAN(Enhanced Controller Area Network) 또한 같은 기능을 하고 약간의 오류가 수정 되었다. 다만 각각의 서브모듈의 개수가 달라져 있다. 아래의 < 7-4>는 두 프로세서간 통신모듈의 차이를 보여준다. 

 

[ 7-4] 통신모듈 비교

 

제거된 주변장치(Removed Peripherals)

l  Multi-Buffered Serial Port (McBSP)

l  External Memory Interface (XINTF)

l  Event Manager (EV) - 새롭게 진보된 모듈로 대체.

 

 

인터럽트

280x에서 새롭게 수정되거나 추가된 주변장치들로 인해 인터럽트 구조 또한 변화하게 되었다.

 

Peripheral Interrupt Expansion (PIE) Module

새롭게 추가된 ePWM, eCAP, eQEP, I2C 모듈과 서브모듈이 증가된 SPI, eCAN 등의 주변장치 변화에 따라 PIE Vector Table의 배치가 변화되었다. 또한 ADC 모듈의 인터럽트중 추가된 SEQ1, SEQ2 인터럽트도 기존의 ADCINT와 함께 PIE Vetor Table에 추가 배치되었다. 아래의 < 8-1> 280x DSP PIE Vector Table을 나타낸다.

 

[ 8-1] 280x PIE Vector Table

 

 

외부 인터럽트(External Interrupts)

l  Interrupt Polarity 선택

280x에서는 외부 인터럽트 XINT1, XINT2, XNMI에 대해 3가지 방법으로 Interrupt Polarity를 결정할 수 있다. (XINT1CR, XINT2CR and XNMICR)

       - Positive edge triggered

       - Negative edge triggered

       - Both Positive and Negative edge triggered

 

281x에서는 Positive Negative edge를 동시에 trigger 할 수 없다.

 

 

Errata Fixes

For more information on the various advisories, see the following silicon errata:

l  TMS320F2810, TMS320F2811, TMS320F2812, TMS320C2810, TMS320C2811,TMS320C2812 DSP Silicon Errata (literature number SPRZ193)

l  TMS320R2811, TMS320R2812 DSP Silicon Errata (literature number SPRZ226)

l  TMS320F2801, TMS320F2806, TMS320F2801 DSP Silicon Errata(literature number SPRZ171)

The following 281x errata have been fixed on the 280x devices:

l  Analog-to-Digital Converter (ADC)
- ADC - EOS BUF1/2 Bits in ADCST Corrupted at the End of Conversion of Sequencer 1/2 When INT MOD SEQ1/2 is Enabled.
- ADC - Reserved Bits in Autosequence Status Register. (ADCASEQSR)
- ADC Result Register Update.
- ADC Sequencer Reset While Dual Sequencers Are Running.

l  Enhanced Controller Area Network (eCAN)
If contention existed between the CPU and the eCAN controller for access to certain eCAN register areas, then a CPU read may erroneously read all zeros(0x00000000) and a CPU write may fail to execute.

l  Logic Level for XCLKIN Pin
On 281x devices, when using an external oscillator to clock the device, the input level of the clock could not exceed VDD rather than the 3.3-V I/O voltage. On the 280x devices, a separate XCLKIN pin has been provided to allow for a 3.3-V external input clock. The X1 pin remains as is and can be used along with X2 to connect a crystal.

l  Serial Peripheral Interface (SPI) Slave Mode
On the 281x, when in slave mode, the SPI does not synchronize received words based on SPISTE because a spurious clock pulse on SPICLK could throw the data stream out of sync. On the 280x devices, this has been corrected and when the SPI port is configured for slave mode, a high-to-low transition on the SPISTE signal always resets the bit counter state machine so that it is re-synchronized on every word transfer.

l  Watchdog Timer Reset Flag
The watchdog flag (WDFLAG) is used to determine if a reset is caused by the watchdog or an external reset. On the 281x devices, this flag is not reliable since the sampling window for the reset line is too short. On the 280x devices, the sampling interval has been increased to allow more time for the reset line to go high after a watchdog reset occurs.

DSP에 대해 좀 더 알고 싶으세요? 싱크웍스 무료실습강좌를 신청하세요. ----------> 무료실습강좌 신청하기
본 내용이 유익하셨다면 싱크웍스 블로그 2.0을 구독하세요. -------------------------> 싱크웍스 RSS
 

Posted by syncworks

댓글을 달아 주세요

티스토리 툴바