CME-M5 Family
Data Sheet
September 2014
Capital Microelectronics Co., Ltd.
CME-M5 Family Data Sheet
Notes
Copyright © 2014 Capital Microelectronics,
Inc. All rights reserved.
No part of this document may be copied,
transmitted, transcribed, stored in a retrieval
system, or translated into any language or
computer language, in any form or by any
means, electronic, mechanical, magnetic,
optical, chemical, manual or otherwise, without
the written permission of Capital
Microelectronics, Inc. All trademarks are the
property of their respective companies.
Version Part Number
CME-M5DSE08
Contact Us
If you have any problems or requirements
during using our product, please contact
Capital Microelectronics, Inc. or your local
distributors, or send e-mail to
sales@capital-micro.com
Environmental Considerations
To avoid the harmful substances being
released into the environment or harming
human health, we encourage you to recycle this
product in an appropriate way to make sure that
most of the materials are reused or recycled
appropriately. Please contact your local
authorities for disposal or recycle information.
Warranty
The information in this document has been
carefully checked and is believed to be entirely
reliable. However, no responsibility is assumed for
inaccuracies. Furthermore, Capital
Microelectronics, Inc. reserves the right to
discontinue or make changes, without prior notice,
to any products herein to improve reliability,
function, or design.
Capital Microelectronics, Inc. advises its
customers to obtain the latest version of the
relevant information to verify, before placing
orders, that the information being relied upon is
current.
The product introduced in this book is not
authorized for use as critical components in life
support devices or systems without the express
written approval of Capital Microelectronics, Inc.
As used herein: 1. Life support devices or systems
are devices or systems that (a) are intended for
surgical implant into the body or (b) support or
sustain life, and whose failure to perform, when
properly used in accordance with instructions for
use provided in the labeling, can be reasonably
expected to result in a significant injury to the user.
2. A critical component is any component of a life
support device or system whose failure to perform
can be reasonably expected to cause the failure of
the life support device or system, or to affect its
safety or effectiveness.
http://www.capital-micro.com
1
CME-M5 Family Data Sheet
Revision History
The table below shows the revision history for this document.
Date
Version
June 2012
1.0
Initial release.
July 2012
1.1
First updated.
October 2012
CME-M5DSE03
November 2012
CME-M5DSE04
IO38/MSEL_2->IO39/MSEL_2
EMIF Read Waveform modified
CME-M5DSE05
Update the MSS peripheral information;
Update the Device-package, see Table 2;
Add the information about GUBF, see section GBUF;
Update figures: Figure 1, Figure 24, etc.;
Revise bugs in the manual.
CME-M5DSE06
Add QFN68 Pin Package, see P75 and P79
The Temperature Range in Industrial level is changed
from (TJ = -40°C to +100°C) to (TJ = -40°C to +125°C),
see P82;
In SDR mode, the read port 256x16 does not support the
following write ports:
4K × 1, 2K × 2, 1K × 4 and 512 × 8, see Table 8;
ISCHEADER3 is updated from 0x2A to 0x22, see
ISCHEADER3 = 0x22;
The max TD Junction temperature is corrected from -85°C
to 125°C, see Table 37.
CME-M5DSE07
Update dimensions of LQFP144 Low-profile Quad
Flat-Pack Package Specifications, TQFP100 Thin
Quad Flat-Pack Package Specifications and QFN68
Package Specifications;
Update the 9 Ordering Information;
Correct the formula of PLL configuration in section of
MSS in System Clock Configuration;
Change the Pins of QFN68 Package Pin List:
Pin 20 is changed from IO15_0 to IO15_1;
Pin 21 is changed from IO16_0 to IO16_1;
Pin 22 is changed from IO17_0 to IO17_1;
Pin 23 is changed from IO18_0 to IO18_1;
April 2013
November 2013
March 2014
Revision
Update new device name and FBGA256 package
http://www.capital-micro.com
2
CME-M5 Family Data Sheet
Date
September 2014
Version
Revision
CME-M5DSE08
Update Table 39 Supply Voltage Ramp Rate:
The minimum Supply Voltage Ramp Rate of VCCINT is
changed from 10us to 10ms and the VCCINT must be
powered to threshold before the VCCIO.
Add Figure 38 Power on waveform.
http://www.capital-micro.com
3
CME-M5 Family Data Sheet
Table of Contents
Notes .......................................................................................................................................................... 1
Revision History ....................................................................................................................................... 2
Table of Contents ..................................................................................................................................... 4
Before You Start........................................................................................................................................ 7
About this Guide.................................................................................................................................. 7
CME-M5 Family FPGA Introduction.................................................................................................... 7
1
CME-M5 Family FPGA Features ...................................................................................................... 8
1.1
1.2
2
CME-M5 Family FPGA Feature Summary ........................................................................... 9
Architecture Overview ........................................................................................................ 10
FPGA ................................................................................................................................................ 12
2.1
2.1.1
2.2
2.3
2.3.1
2.3.2
2.3.3
2.3.4
2.4
2.4.1
2.4.2
2.5
2.5.1
2.6
2.6.1
Programmable Logic Block (PLB) ...................................................................................... 12
LP................................................................................................................................... 12
(1) Look-Up Table ............................................................................................................ 13
(2) Register ...................................................................................................................... 13
(3) Carry, Cascade and Arithmetic Logic ........................................................................ 13
LE ....................................................................................................................................... 14
(1) LE Cascade ............................................................................................................... 14
(2) LE Carry and Skip ...................................................................................................... 14
(3) LE Shift....................................................................................................................... 14
Embedded Memory Block .................................................................................................. 14
EMB5K Port Definitions ................................................................................................. 15
EMB5K Operations ........................................................................................................ 16
EMB5K Operation Mode................................................................................................ 17
(1) EMB5K True Dual-port............................................................................................... 17
(2) EMB5K Simple Dual-port ........................................................................................... 18
(3) EMB5K Single-port .................................................................................................... 19
Conflict Avoidance ......................................................................................................... 20
DSP Block........................................................................................................................... 20
DSP Primitive................................................................................................................. 20
DSP Usage Mode .......................................................................................................... 22
(1) Multiplier ..................................................................................................................... 23
(2) Multiplier and adder ................................................................................................... 23
(3) Multiplier and Accumulator......................................................................................... 24
Embedded Single Port SRAM ............................................................................................ 24
SRAM Port Definitions ................................................................................................... 24
Input/output Blocks ............................................................................................................. 25
Pull-Up/Down/Keeper Resistors .................................................................................... 27
http://www.capital-micro.com
4
CME-M5 Family Data Sheet
2.6.2
2.6.3
2.6.4
2.6.5
2.7
2.8
2.8.1
2.8.2
2.8.3
2.8.4
2.9
2.9.1
2.9.2
2.9.3
2.9.4
3
MSS Subsystem .............................................................................................................................. 39
3.1
3.1.1
3.2
3.3
3.4
3.5
3.6
3.7
3.7.1
3.7.2
3.7.3
3.7.4
3.7.5
4
ESD Protection .............................................................................................................. 27
Drive Strength ................................................................................................................ 27
The Organization of IOBs into Banks ............................................................................ 27
The I/Os During Power-On, Configuration, and User Mode ......................................... 28
Interconnect ........................................................................................................................ 28
PLL ..................................................................................................................................... 29
PLL features................................................................................................................... 29
PLL Hardware Description ............................................................................................. 29
PLL Primitive Port Signal Definitions ............................................................................. 30
Clock Feedback Modes ................................................................................................. 32
(1) Internal Feedback Mode (Frequency Synchronous Mode) ....................................... 33
(2) External Feedback Mode ........................................................................................... 33
Global Clock & Reset Resources ....................................................................................... 34
External Crystal Input .................................................................................................... 35
Clocking Infrastructure................................................................................................... 35
GBUF ............................................................................................................................. 36
Clock Switch .................................................................................................................. 37
8051 Instantiation ............................................................................................................... 40
8051 Macro Primitive Description.................................................................................. 40
Multiplex of P Port Pins ...................................................................................................... 42
MSS Clock Description ....................................................................................................... 43
MSS Memory Map .............................................................................................................. 43
MSS External Memory Interface (EMIF) ............................................................................ 44
(1) Synchronous EMIF .................................................................................................... 44
(2) Asynchronous EMIF .................................................................................................. 45
RTC..................................................................................................................................... 46
MSS in System Management ............................................................................................. 47
Device Register ............................................................................................................. 47
ISC Register Frame ....................................................................................................... 48
Extended SFR ............................................................................................................... 48
MSS In System Configuration ....................................................................................... 49
MSS in System Clock Configuration ............................................................................. 51
(1) PLL Configuration ...................................................................................................... 51
(2) GCLK Dynamic Switch .............................................................................................. 51
(3) MSS Clock Dynamic Switch ...................................................................................... 52
Configuration and Debug ............................................................................................................... 53
4.1
Configuration Mode ............................................................................................................ 53
4.1.1
AS Mode ........................................................................................................................ 53
4.1.2
PS Mode ........................................................................................................................ 54
4.1.3
JTAG Mode .................................................................................................................... 55
4.2
SPI Flash ............................................................................................................................ 55
(1) Using embedded SPI-Flash ....................................................................................... 55
http://www.capital-micro.com
5
CME-M5 Family Data Sheet
(2) Using External SPI-Flash........................................................................................... 56
ISC ...................................................................................................................................... 56
Debug ................................................................................................................................. 56
Power-On-Reset (POR) ..................................................................................................... 56
eFUSE Program ................................................................................................................. 57
4.3
4.4
4.5
4.6
5
Security ............................................................................................................................................ 58
5.1
Bitstream Generation Security Level .................................................................................. 58
(1) prot_flagn ................................................................................................................... 58
(2) read_disable0 ............................................................................................................ 59
(3) read_disable1 ............................................................................................................ 59
On-Chip eFuse ................................................................................................................... 59
Embedded SPI-Flash Hidden Bitstream ............................................................................ 59
AES Security ...................................................................................................................... 60
5.2
5.3
5.4
6
DC & Switching Characteristics .................................................................................................... 61
6.1
6.1.1
6.1.2
6.1.3
6.2
6.2.1
6.2.2
6.2.3
6.2.4
6.2.5
7
DC Electrical Characteristics .............................................................................................. 61
Absolute Maximum Ratings ........................................................................................... 61
Power Supply Specifications ......................................................................................... 61
General Recommended Operating Conditions ............................................................. 62
Switching Characteristics ................................................................................................... 65
Clock Performance ........................................................................................................ 66
I/O Performance ............................................................................................................ 66
PLB Performance .......................................................................................................... 66
EMB5K Performance ..................................................................................................... 66
DSP Performance .......................................................................................................... 67
Pins and Package............................................................................................................................ 68
7.1
7.2
7.2.1
7.2.2
7.2.3
7.2.4
7.3
7.3.1
7.3.2
7.3.3
7.3.4
Pins Definitions and Rules ................................................................................................. 68
Pin List ................................................................................................................................ 69
LQFP144 Package Pin List ........................................................................................... 69
TQFP100 Package Pin List ........................................................................................... 72
FBGA256 Package Pin List ........................................................................................... 73
QFN68 Package Pin List ............................................................................................... 76
Package Information .......................................................................................................... 77
LQFP144 Low-profile Quad Flat-Pack Package Specifications.................................... 77
TQFP100 Thin Quad Flat-Pack Package Specifications .............................................. 78
FBGA256-Pin FineLine Ball-Grid Array (FBGA) – THIN – Wire Bond.......................... 79
QFN68 Package Specifications..................................................................................... 80
8
Developer Kits ................................................................................................................................. 81
9
Ordering Information ...................................................................................................................... 82
10
Legends ...................................................................................................................................... 84
http://www.capital-micro.com
6
CME-M5 Family Data Sheet
Before You Start
About this Guide
This guide is only a part of an overall of documentation on CME-M5 family FPGA. It serves as a
technical reference guiding you to be familiar with the CME-M5 family FPGA module with its heart
functions and characteristics.
The CME-M5 Family FPGA consists of CME-M5 C, CME-M5 R and CME-M5 P series FPGA
modules. And this manual is available for all modules contained in this family except where
noted.
For the detailed information of this family module, please go to http://www.capital-micro.com.
Note:
CME-M5 Family FPGA is just a name that replaces the manuals of CME3000-M and CME3000-C FPGA
Data Sheet.
CME-M5 Family FPGA Introduction
CME-M5 family FPGA has C, R and P three series devices.
The C series devices are an intelligent device integrated enhanced 8051 MCU and high performance
FPGA, which can fulfill customized system design and IP protection (128 bit AES). Embedded optimized
RAM confers the highest speed and performance on 8051 processor hardcore. Designers can design
FPGA with CME’s Primace as well as embedded design with third party EDA tool KeilTM conveniently
and quickly. Based on CME-M5 single chip, CAP (Configurable Application Platform on chip) is ideal for
hardware and embedded designers who need a true system-on-chip (SoC) solution that gives more
flexibility than traditional fixed-function microcontrollers and is more cost-efficient than FPGAs-without
the excessive cost of soft processor cores on traditional FPGAs.
The R series devices are with no hard MCU core and P series devices are special for tradition FPGA
application with no hard MCU core and large embedded SRAM.
The three series FPGA can be used widely in industry, medical, communication system,
consumer electronics, etc.
http://www.capital-micro.com
7
CME-M5 Family Data Sheet
1 CME-M5 Family FPGA Features
FPGA






SRAM-based FPGA Fabric
Up to 6144 4-input Look-up Tables, 4096
DFF-based registers
Performance up to 250MHz
Embedded RAM Block Memory
32 4.5Kbit programmable dual-port
DPRAM memory EMB5K blocks
Embedded DSPs block
16 18x18 DSP (MAC) blocks
Clock Network
8 de-skew global clocks
2 PLLs support frequency multiplication,
frequency division, phase-shifting,
de-skew
8 external input clocks, 1 external crystal
clock input
I/O
3.3/2.5/1.8/1.5V LVTTL/LVCMOS support
Programmable Pull-Up, Pull down and
Bus Keeper control
Programmable driver strength: 2, 4, 8, 12,
16 mA
Level slope ratio control

Configuration



MSS



Enhanced 8051 MCU
Reduced instruction cycle time (Up to 12
times in respect to standard 8051),
frequency up to 200MHz
Compatible to 8051 instruction system
Support up to 8MB data/code memory
extension
Support hardware 32/16-bit MDU
On-chip debugger system (OCDS)
8-channel DMA
Embedded SRAM Memory
128KByte single-port SRAM
Data/code unified addressing, flexible
memory configuration
Peripheral
3 16-bit Timers
1 I2C interface
1 SPI interface
Master rate up to 100Mb/s @200MHz
Slave rate up to 25Mb/s @200MHz
2 Full Duplex Serial Interfaces, the rate is
up to 6.25Mb/s @200MHz
Enhanced hardware operation unit
supports multiplication, division, skip and
normalization.
STOP, IDLE Mode Power Management
In System Management
ISC Control
Dynamic clock management in system
Configuration Mode
JTAG Mode
AS Mode
PS Mode
JTAG Interface
JTAG Chip Configuration
JTAG 8051 Debugging
Dynamic/Multi-configuration Image Support
Security



Encrypted Bitstream with 128-bit AES
Based Efuse and SPI Flash security settings
control accessing the device memory
Protection against copying, overbuilding,
cloning and tampering with both of
customer's FPGA and 8051 firmware IP
Package




TQFP-100
LQFP-144
FBGA-256
QFN-68
http://www.capital-micro.com
8
CME-M5 Family Data Sheet
1.1 CME-M5 Family FPGA Feature Summary
Table 1 CME-M5 C Series FPGA Feature Summary
Series
C
R
P
Device (1)
LUT
Programmable
Embedded
Logic
Memory
SRAM
Block(PLB) (2)
Block
(3)
LP
Register
4.5Kb
Max
DSP
Max
Block
PLL
Flash
MCU
User
(4)
I/O
M5C03N0
3072
1024
2048
32
144Kb
128KB
16
2
-
1
186
M5C06N0
6144
2048
4096
32
144Kb
128KB
16
2
-
1
186
M5C03N3
3072
1024
2048
32
144Kb
128KB
16
2
4Mb
1
186
M5C06N3
6144
2048
4096
32
144Kb
128KB
16
2
4Mb
1
186
M5R03N0
3072
1024
2048
32
144Kb
128KB
16
2
-
-
186
M5R06N0
6144
2048
4096
32
144Kb
128KB
16
2
-
-
186
M5R03N3
3072
1024
2048
32
144Kb
128KB
16
2
4Mb
-
186
M5R06N3
6144
2048
4096
32
144Kb
128KB
16
2
4Mb
-
186
M5P03N0
3072
1024
2048
32
144Kb
-
16
2
-
-
186
M5P06N0
6144
2048
4096
32
144Kb
-
16
2
-
-
186
M5P03N3
3072
1024
2048
32
144Kb
-
16
2
4Mb
-
186
M5P06N3
6144
2048
4096
32
144Kb
-
16
2
4Mb
-
186
Note:
(1) C: FPGA + SRAM (used by MCU) + MCU; R: FPGA + SRAM; P: FPGA.
‘N0’: indicates device contains no Flash, ‘N3 ’indicates that device contains 4Mb Flash.
(2) Each CME-M5 PLB contains 4 LPs (Logic parcel). Each LP contains 3 LUTs, 2 registers.
(3) M5CXX series devices: SRAM could only be used by MCU; M5RXX series devices: SRAM could be
used by FPGA.
(4) Each DSP Block contains an 18 x 18 multiplier with 41 bits accumulator, an adder. Each DSP Block
can also support 2 independent 12 x 9 multipliers with 21 bits accumulator.
Table 2 CME-M5 FPGA Device-Package and Available I/Os
Package
TQFP100
LQFP144
FBGA256
QFN68
Pitch(mm)
0.5
0.5
1.0
0.4
Body Size(mm)
16 x 16
22 x 22
17 x 17
8x8
Device
User I/O
User I/O
User I/O
User I/O
M5x03N0
69
100
186
46
M5x06N0
69
100
186
46
M5x03N3
69
100
186
46
M5x06N3
69
100
186
46
http://www.capital-micro.com
9
CME-M5 Family Data Sheet
1.2 Architecture Overview
The CME-M5 FPGA architecture consists of 5 fundamental programmable functional tiles and an
enhanced 8051 MSS. The PLBs, IOBs, EMB, DSPs and PLLs make up the FPGA. The enhanced 8051
and SRAM make up the MSS. The EMB and DSP can be called as special function block (SFB).







Programmable Logic Blocks (PLBs) contain RAM-based Look-Up Tables (LUT-4) to implement
logic and storage elements that can be used as flip-flops. PLBs can be programmed to perform a
wide variety of logical functions as well as to store data.
Embedded Memory Block provides data storage in the form of 4.5K bit dual-port blocks.
DSPs accept two 18-bit binary numbers as inputs and calculate the product. The DSP block
includes special DSP multiply-accumulate blocks.
Phase (PLL) blocks provide self-calibrating, fully digital solutions for distributing, delaying,
multiplying, dividing, and phase shifting clock signals.
Input/Output Blocks (IOBs) control the flow of data between the I/O pins and the internal logic of the
device. Each IOB supports bidirectional data flow plus 3-state operation.
The monocycle enhanced 8051 CPU is used as central processing unit, whose instruction set is
compatible with standard ASM51 completely.
The embedded 128KB SRAM is only used as the 8051 coding and data memory for C Series
devices.
These elements are organized as shown in figure below. A ring of IOBs surrounds a regular array of
PLBs. The CME-M5 family FPGA has a single column of block EMB and DSP in the array. The PLLs and
GCLK_CTRL blocks are positioned at the top and bottom right corner. The 8051 and SRAM memory are
laid out at the right side of the diagram. All these elements include the Xbars that interconnect the
functional elements, transmitting signals among them.
http://www.capital-micro.com
10
CME-M5 Family Data Sheet
IOBs
C1
r31
C2
PLB
PLB
C3
PLB
PLB
C4
PLB
PLB
C5
PLB
PLB
PLB
PLB
C6
PLB
PLB
C7
C8
PLB PLB
200um
PLB
C9
C1
0
PLB
C1
1
PLB
C1
2
PLB
C1
C1
3
4
PLB
300um
PLB
PLB
PLB
PLB
MAC
PLB
C1
C1
C1
C1
C1
5
6
7
8
9
PLB PLB PLB PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
GCLK_Ctrl
PLL
EMB
r30
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
MAC
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
r27
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
r26
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
r29
r28
RTC analog
r32
RTC
Digital
MAC
EMB
MAC
r25
r24
r23
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
MAC
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
64KB SRAM
EMB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
r21
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
r20
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
r19
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
r18
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
MAC
8051
PLB
r22
MAC
EMB
MAC
IOBs
r17
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
r16
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
r15
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
r14
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
r13
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
IOBs
MAC
EMB
r12
r11
r10
MAC
MAC
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
MAC
r9
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
r8
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
r7
64KB SRAM
EMB
SPI
Config /
JTAG
MAC
EMB
r6
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
MAC
r5
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
MAC
EMB
r2
r1
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
GCLK_Ctrl
MAC
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLB
PLL
Efuse ESD
r4
r3
PLB
IOBs
Figure 1 CME-M5 FAMILY FPGA Architecture
http://www.capital-micro.com
11
CME-M5 Family Data Sheet
2 FPGA
The CME-M5 FAMILY FPGA consists of up to 512 PLBs, 32 EMB5K blocks, 16 18x18 DSPs and 2 PLLs.
This chapter describes these element blocks.
2.1 Programmable Logic Block (PLB)
The Programmable Logic Block (PLB) is the fabric basic logic tile that is composed of LE and Xbar. The
PLB is the basic tile of the Fabric. Their organization is shown in the following figure. One LE contains
four interconnected Logic Parcels (LP). The LE constitutes the main logic resource for implementing
synchronous as well as combinatorial circuits.
The Xbar switches and passes the signals between the tile elements.
LP3
LE
LP2
Xbar
LP1
LP0
PLB
Figure 2 PLB Schematic Diagram
The PLBs are arranged in a regular array of rows and columns, as shown in Figure 1.
The CME development software designates the location of a PLB according to its C and R coordinates,
starting in the bottom left corner, as shown in Figure 1. The letter ‘C’ followed by a number identifies
columns of PLBs, incrementing from the left side of the die to the right. The letter ‘R’ followed by a
number identifies the position of each PLB in the CLB row, incrementing from the bottom of the die.
2.1.1
LP
LP is the basic programmable logic element. The LP has the following elements to provide logic,
arithmetic functions, as shown in the figure below.
 Three 4-input LUT function generators
 Two registers
 Carry, cascade and arithmetic logic
http://www.capital-micro.com
12
CME-M5 Family Data Sheet
carry output
shift up/down
dx4b
fast cascade to next LP above
fast cascade to next PLB
din[1:0]
f0[8]
f1[8]
f2[8]
LUT5
Gen
byp[8]
dy[0]
LUT4
di
4_1
qx[4]
shift
din[1]
a_sr
en
4
Cascade Gen
LUT5
Gen
byp[12]
f0[4]
f1[4]
f2[4]
fast cascades
from prev PLB
fy[0]
dx[4]
LUT4C
4_0
din[0]
di
byp[4]
en
f0[0]
f1[0]
f2[0]
Lut5 cascades
from next LP up
0
LUT4
Cascad
e Gen
byp[0]
qx[0]
shift
a_sr
dx[0]
0
fx4b
carry input
shift[1:0]
clk
shift up/down
Figure 3 LP Schematic Diagram
(1) Look-Up Table
The Look-Up Table or LUT is a RAM-based function generator and is the main resource for
implementing logic functions. Each of the three LUTs in a LP has four logic inputs (f0-f3) and a single
output (d). Any four-variable Boolean logic operation can be implemented in one LUT. Functions with
more inputs can be implemented by cascading LUTs that are in one LP or adjacent LPs.
(2) Register
The register is a programmable D-type flip-flop. There are two level multiplexers on the D input select of
the registers. The first level multiplexer selects either the LUT combinatorial output or the bypass signal
byp[x]. The second level multiplexer selects either the first level multiplexer output signal byp[x] or signal
shift. The shift signal is from the next up/down relative register output qx.
The storage element output, qx, offers three possible paths:
 Drives the interconnect line directly
 Feedbacks to the LUT input
 Cascade to the next up/down relative storage element signal shift
(3) Carry, Cascade and Arithmetic Logic
The vertical up cascading from near down LP feeds the LUT0 input, the LUT40 or LUT41 generates the
cascading output. Functions with more inputs can be implemented by cascading LUTs between PLBs.
The carry chain, together with various dedicated arithmetic logic gates, support fast and efficient
implementations of math operations such as adders, counters, comparators, multipliers, wide logic gates,
and related functions. The carry logic is automatically used for most arithmetic functions in a design. The
gates and multiplexers of the carry and arithmetic logic can also be used for general-purpose logic,
http://www.capital-micro.com
13
CME-M5 Family Data Sheet
including simple wide Boolean functions.
The carry input from LUT40 of the near down LP enters the LUT40 and the LUT40 generates the carry
out which can be cascaded to next up LUT40.
2.2 LE
The LE contains 4 LPs and Carry Ship, Register Control circuitry which make LE implement many
complex functions, such as cascading, Carry and Skip, LE Shift. These functions provide higher
performance and lower resources usage than normal LUT implemented because these connections are
hardware logic and connections.
(1) LE Cascade
The LEs can be cascaded vertically and horizontally to implement large and complex functions.
(2) LE Carry and Skip
The LEs can implement flexible carry function with skip 4 and skip 8 fast carry logics.
(3) LE Shift
The LE registers can be cascaded to implement the register shift up or down vertically with next up LE
register.
2.3 Embedded Memory Block
CME-M5 family device supports embedded memory block (EMB), which is organized as one column
total 32 4.5Kbit EMB5K. EMB5K module is a true dual-port memory that permits independent access to
the common EMB block. Each port has its own dedicated set of data, control and clock lines for
synchronous read and writes operations. EMB5K provides the features as below:
 4.5Kbits
 Mixed clock mode
 A, B data width configured independently
 Support write data through output
 Parity bit. The EMB5K blocks support a parity bit for each byte. The parity bit, along with internal LC,
can implement parity checking for error detection to ensure data integrity. Parity-sized data words
can be used to store user-specified control bits.
 Initialization support. The format of initialization file is either .hex or .dat (a hexadecimal number
each line, the number of lines depends on depth of EMB5K). Initialization files initialize EMB5K
memory during configuration.
 Two EMB5K cascade
 Three Memory Modes available. EMB5K can be configured into the following modes:
- emb_tdp
http://www.capital-micro.com
14
CME-M5 Family Data Sheet
-
emb_sdp
emb_sp
2.3.1
EMB5K Port Definitions
The dual-port primitive EMB5K signals are defined in the following table.
Table 3 EMB5K Port Definition
Port Name
Type
Width
Description
clka
I
1
Input clock for port A
cea
I
1
Chip enable for port A
wea
I
1
Write enable for port A
aa
I
12
Address line for port A
da
I
18
Data input for port A
clkb
I
1
Input clock for port B
ceb
I
1
Chip enable for port B
web
I
1
Wire enable for port B
ab
I
12
Address line for port B
db
I
18
Data input for port B
q
O
18
Memory data q output
wq_in
I
9
Input from paired EMB5K for wide true dual port mode
wq_out
O
9
Output to paired EMB5K for wide true dual port mode
Table 4 EMB5K Parameters
Parameters
Type
Description
string
Port a usage mode setting:
256x18, 512x9, 1kx4, 2kx2, 4kx1, wtdp (wide true dual port)
Default: 256x18
string
Port b usage mode setting:
256x18, 512x9, 1kx4, 2kx2, 4kx1, wtdp (wide true dual port)
Default: 256x18
string
Bypassing of write data from write port to read port enable for port a,
true or false
Default: false
portb_wr_through
string
Bypassing of write data from write port to read port enable for port b,
true or false
Default: false
init_file
string
EMB initial file
Default: “” (No initial file)
operation_mode
string
EMB working mode, just for simulation
true_dual_port, single_port, simple_dual_port
porta_data_width
string
EMB port a data width
modea_sel
modeb_sel
porta_wr_through
http://www.capital-micro.com
15
CME-M5 Family Data Sheet
Parameters
Type
portb_data_width
string
2.3.2
Description
EMB port b data width
EMB5K Operations
Writing data to and accessing data from the EMB5K are synchronous operations that take place
independently on each of the two ports.
When the we and ce signals enable the active edge of clk, data at the d input bus is written to the
EMB5K location addressed by the a lines. There are two write actions which are selected by wr_through
parameter. The write data is also passed to q output bus if the wr_through is true during the writing
process. The q output bus value will be the previous read output value during the writing process if the
wr_through is false. The two operation waveforms are shown in Figure 4 and Figure 5.
clk
ce
we
a
ab
d
0000
q
bb
FFFF
men[ab]
FFFF
mem[bb]
Figure 4 wr_through is false Waveform
http://www.capital-micro.com
16
CME-M5 Family Data Sheet
clk
ce
we
1
a
ab
d
0000
bb
1
q
FFFF
mem[ab]
FFFF
mem[bb]
FFFF
Figure 5 wr_through is true Waveform
2.3.3
EMB5K Operation Mode
(1) EMB5K True Dual-port
EMB5K supports any combination of dual-port operation: two read ports, two write ports, or one read and
one write at different clock frequencies. The following figure shows true dual-port memory configuration.
Port A
Port B
db[]
aa[]
ab[]
wea
clka
EMB5K
da[]
web
clkb
cea
ceb
qa[]
qb[]
Figure 6 True Dual-port Memory Mode
Table 5 Port Descriptions of True Dual-port Memory Mode
Port Name
Type
Description
aa (b)
Input
Port A (B) Address.
da (b)
Input
Port A (B) Data Input.
http://www.capital-micro.com
17
CME-M5 Family Data Sheet
Port Name
Type
Description
qa (b)
Output
wea (b)
Input
Port A (B) Write Enable. Data is written into the dual-port SRAM upon the
rising edge of the clock when both wea (b) and cea (b) are high.
cea (b)
Input
Port A (B) Enable. When cea (b) is high and wea (a) is low, data read from the
dual-port SRAM address aa (b). If cea (b) is low, qa (b) retains its value.
clka (b)
Input
Port Clock.
Port A (B) Data Output.
Table 6 True Dual-port Configurations
B Port
A Port
4K×1
2K×2
1K×4
512×8
4K × 1
√
√
√
√
2K × 2
√
√
√
√
1K × 4
√
√
√
√
512 × 8
√
√
√
√
512×9
256×16
256×18
√
512 × 9
256 × 16
256 × 18
(2) EMB5K Simple Dual-port
EMB5K also supports simple dual-port memory mode: one read port while one write port. The following
figure shows simple dual-port memory configuration.
qr[]
aw[]
ar[]
cew
clkw
EMB5K
dw[]
cer
clkr
Figure 7 Simple Dual-port Memory Mode
Table 7 Port Descriptions of Simple Dual-port Memory Mode
Port Name
Type
Description
dw
Input
Write Data
aw
Input
Write Address
clkw
Input
Write Clock
cew
Input
Write Port Enable. Active high.
http://www.capital-micro.com
18
CME-M5 Family Data Sheet
Port Name
Type
Description
qr
Output
ar
Input
Read Address
cer
Input
Read Enable. Active high
clkr
Input
Read Clock
Read Data
Table 8 Simple Dual-port Configurations
W Port
Read Port
4K×1
2K×2
1K×4
512×8
4K × 1
√
√
√
√
2K × 2
√
√
√
√
1K × 4
√
√
√
√
512 × 8
√
√
√
√
512×9
256×18
√
512 × 9
256 × 16
256×16
√
√
√
√
√
√
256 × 18
(3) EMB5K Single-port
EMB5K also supports single-port memory mode as shown in the figure below.
EMB5K
we
clk
ce
d[]
a[]
q[]
Figure 8 Single-port Memory Mode
Table 9 Pin Description of Single-port Memory Mode
Port Name
Type
Description
d
Input
Write Data
a
Input
Write Address.
we
Input
Write Enable. Active high.
clk
Input
Write Clock.
ce
Input
Port Enable. Active high.
q
Output
Read Data
Table 10 Single-port Configuration
Port
4K×1
2K×2
1K×4
512×8
512×9
http://www.capital-micro.com
256×16
256×18
19
CME-M5 Family Data Sheet
2.3.4
Conflict Avoidance
In the dual-port memory mode, both ports can access any memory address at any time. When both ports
access the same address, the read and write behavior should observe certain clock timing restrictions.
These restrictions are applicable to both synchronous and asynchronous clocks.
2.4 DSP Block
The CME-M5 family devices have one column of 8 DSP MAC tiles. Within the DSP column, a single DSP
tile is combined with extra logic and routing.
dinx
dinx_input_mode
diny
diny_input_mode
+
X
acc_en
dinz_en
mac_out
mac_output_mode
sload
dinz
dinz_input_mode
Figure 9 DSP Block
DSP tile contains an 18 x 18 two’s complement multiplier and a 40-bit sign-extended accumulator, a
function that is widely used in digital signal processing (DSP). Programmable pipelining of input
operands, intermediate products, and accumulator outputs enhances throughput.
DSP provides features as below:





18 x 18 two's-complement multiplier with a full-precision 36-bit result
Flexible 40-bit post-accumulator with optional registered accumulation feedback
Dynamic user-controlled operating modes to adapt DSP functions from clock cycle to clock cycle
Registers, ensuring maximum clock performance and highest possible sample rates with no area
cost
One DSP support 2 independent 12 x 9 multiplier with 21-bit accumulator
2.4.1
DSP Primitive
The following figure shows DSP (MAC) block.
http://www.capital-micro.com
20
CME-M5 Family Data Sheet
MAC
a_dinx[13:0]
a_diny[9:0]
a_dinz[20:0]
a_mac_out[20:0]
a_over_flow
a_sload
a_acc_en
a_dinz_en
clk
rst_n
b_dinx[13:0]
b_diny[9:0]
b_dinz[20:0]
b_mac_out[20:0]
b_over_flow
b_sload
b_acc_en
b_dinz_en
Figure 10 MAC Block
Table 11 Port Definition
Port
Direction
Width
Description
a_dinx[13:0]
I
14
Multiplicand inputs from ixbar to mult A MSBs, 6 bit LSBs
for usage in 18x18 mode.
b_dinx[13:0]
I
14
Multiplicand inputs from ixbar to mult B MSBs.
a_diny[9:0]
I
10
Multiplier input from ixbar to mult A, LSBs of multiplier
input in 18x18 mode.
b_diny[9:0]
I
10
Multiplier input from ixbar to mult B, MSBs of multiplier
input in 18x18 mode.
a_dinz[20:0]
I
21
Ixbar and bypass inputs to mult A post add and post add
LSBs in 18x18 mode.
b_dinz[20:0]
I
21
Ixbar and bypass inputs to mult B post add and post add
MSBs in 18x18 mode.
a_sload
I
1
sloadA, when asserted directly loads the post add input
into the accumulator.
b_sload
I
1
sloadB, when asserted directly loads the post add input
into the accumulator.
a_acc_en
I
1
Accumulator A enable.
http://www.capital-micro.com
21
CME-M5 Family Data Sheet
Port
Direction
Width
Description
a_dinz_en
I
1
Post adder A enable.
b_acc_en
I
1
Accumulator B enable.
b_dinz_en
I
1
Post adder B enable.
a_mac_out[20:0]
O
21
Outputs to oxbar mult A.
b_mac_out[20:0]
O
21
Outputs to oxbar mult B.
a_overflow
O
1
mulA Overflow flag.
b_overflow
O
1
mulB Overflow flag.
clk
I
1
Clock input.
rstn
I
1
Reset input, Active low.
Table 12 Parameter Table
Parameters
Type
mode_sel
string
MAC working mode select, default: 000.
signed_sel
string
Set signed/unsigned multiplication, true or false, default: true.
adinx_input_mode
string
a_dinx input mode setting: bypass or register, default: bypass.
adiny_input_mode
string
a_diny input mode setting: bypass or register, default: bypass.
adinz_input_mode
string
a_dinz input mode setting: bypass or register, default: bypass.
amac_output_mode
string
a_mac_out output mode setting: bypass or register
Default: bypass.
bdinx_input_mode
string
b_dinx input mode setting: bypass or register, default: bypass.
bdiny_input_mode
string
b_diny input mode setting: bypass or register, default: bypass.
bdinz_input_mode
string
b_dinz input mode setting: bypass or register, default: bypass.
bmac_output_mode
string
b_mac_out output mode setting: bypass or register,
Default: bypass.
2.4.2
Description
DSP Usage Mode
The DSP can be used as two dependent 12x9 A-MAC and B-MAC or one 18x18 MAC function. These
MACs have the same functions is shown as Figure 9. The CME Primace® deals with use input width and
maps to 12x9 A-MAC and B-MAC or one 18x18 MAC automatically.
Table 13 Port Description
Port name
Type
Description
clk
Input
Clock, posedge active.
rstn
Input
Reset, active low.
dinx
Input
Multiplier input (Range: 2~18).
diny
Input
Multiplier input (Range: 2~18).
dinz
Input
Input (Range: 2~40).
sload
Input
Accumulate load.
acc_en
Input
Accumulate enable, active high.
dinz_en
Input
Adder enable, active high.
mac_out
Output
Output (Range: 2~40).
http://www.capital-micro.com
22
CME-M5 Family Data Sheet
Port name
Type
overflow
Output
Description
Overflow, 1 overflow; 0 not active high.
Note: The acc_en and dinz_en both are not active if they are both high.
Table 14 Parameter Description
Parameter
Type
Description
signedx_sel
string
“true” dinx input type is signed
“false” dinx input type is unsigned
signedy_sel
string
“true” diny input type is signed
“false” diny input type is unsigned
signedz_sel
string
“true” dinz input type is signed
“false” dinz input type is unsigned
dinx_input_mode
string
" bypass " input directly to multiplier;
" register " input via register
diny_input_mode
string
" bypass " input directly to multiplier;
" register " input via register
dinz_input_mode
string
" bypass" input directly;
" register" input via register
mac_output_mode
string
" bypass" mac output directly;
" register" mac output via register
The x * y multiplier output will be an unsigned result only when both the x and y are unsigned, otherwise
the x * y multiplier output will be a signed and two’s complement result. The mac_out will be an unsigned
result only when both the dinz and multiplier output are unsigned, otherwise the mac_out will be a signed
and two’s complement result.
(1) Multiplier
The following figure describes that the DSP is used as a multiplier which outputs the dinx * diny result.
dinx
dinx_input_mode
diny
X
+
mac_out
mac_output_mod
e
diny_input_mode
Figure 11 Multiplier
(2) Multiplier and adder
The following figure describes that the DSP is used as a multiplier and adder which output the dinx * diny
+ dinz result.
http://www.capital-micro.com
23
CME-M5 Family Data Sheet
dinx
dinx_input_mode
diny
+
X
mac_out
mac_output_mode
acc_en
dinz_en
diny_input_mode
dinz
dinz_input_mode
Figure 12 Multiplier and Adder
(3) Multiplier and Accumulator
The following figure describes that the DSP is used as a multiplier and adder which output the dinx * diny
+ mac_out(n-1) result.
dinx
dinx_input_mode
diny
diny_input_mode
+
X
acc_en
dinz_en
mac_out
mac_output_mode
sload
dinz
dinz_input_mode
Figure 13 Multiplier and Accumulator
2.5 Embedded Single Port SRAM
CME-M5 family device contains an embedded SPRAM. The synchronous SPRAM total size is 128Kbyte
that can be configured as 128x8 or 64x16 mode.
2.5.1
SRAM Port Definitions
The dual-port primitive SPRAM signals are defined in the table below.
Table 15 SRAM Port Definition
Port Name
Type
Width
Description
clk
I
1
Input clock for SRAM, posedge active
cen
I
1
Chip enable for SRAM, active low
http://www.capital-micro.com
24
CME-M5 Family Data Sheet
Port Name
Type
Width
Description
wen
I
1
Write enable for SRAM, active low
addr
I
12
Address line for SRAM
datai
I
8/16
Data input for SRAM
datao
o
8/16
Input clock for SRAM
Table 16 SRAM Parameters
Parameters
Type
Description
data_width
string
SPRAM port data width, “8” or “16”
init_file
string
SPRAM initial file, the suffix name is .dat or .hex
Default: “”
2.6 Input/output Blocks
The Input/output Block (IOB) provides a programmable, bidirectional interface between an I/O pin and
the FPGA’s internal logic. The IOC is the function for an I/O pin. A simplified diagram of the IOC’s
internal structure appears in Figure 14. There are three main signal paths within the IOC: the output path,
input path, and tri-state path. Each path has its own pair of registers that can act as registers. The three
main signal paths are as follows:




The input path carries data from the pad, which is bonded to a package pin, through an optional
programmable delay element directly to the id line. There are alternate routes through a register to
the id line. The id line is lead to the FPGA’s logic.
The output path, starting with od, carries data from the FPGA’s internal logic through a multiplexer
and then a tri-state driver to the IOC pad. In addition to this direct path, the multiplexer provides the
path to registers.
The tri-state path determines when the output driver is high impedance. The oen line carries data
from the FPGA’s internal logic through a multiplexer to the output driver. In addition to this direct
path, the multiplexer provides the option to insert a register. When the oen line is asserted high, the
output driver is high-impedance (Floating, Hi-Z). The output driver is active-low enabled.
The output and tri-state paths entering the IOC have an inverter option. Any inverter placed on
these paths is automatically absorbed into the IOC.
http://www.capital-micro.com
25
CME-M5 Family Data Sheet
id_setn
0
1
id
Q
setn
rxd
D
CK
Qresetn
Level Shifters DOWN
clk
RXD_S
Vddc
Vddio
In
out
id_resetn
VDDIO
Schmitt Trigger
ESD
od
Pull
UP
od_setn
1
0
setn
D
clk
Q
CK
Q
resetn
1
0
2
3 txd
1
0
Single-ended
Transmitter (Driver)
Vddc
Vddio
In
out
Pad
od_resetn
Pull
DOWN
Level Shifters UP
oen
oen_setn
1
0
setn
D
clk
CK
Q
Q
resetn
0
1
Vddc
Vddio
In
out
2
3 txe
1
0
Bus
Beeper
VSS
oen_resetn
Figure 14 IOC
The IOC Symbol is shown in the following figure.
clk
clken
setn
rstn
oen
od
pad
IOC
id
Figure 15 IOC Symbol
Table 17 OC Port Definition
Port
Width
Direction
Description
clk
1
I
IO input clock
rstn
1
I
IO input reset, active low
setn
1
I
IO input set, active low
clk_en
1
I
IO clock enable
oen
1
I
IO output enable, active low
od
1
I
Output data from fabric
id
1
O
Input data from IO
pad
1
IO
IO pad
Parameters
is_en_used
string
Whether external enable is used. Default: false
reg_always_en
string
Register for id/od/oen enable setting. True or false,
default: false
is_rstn_inv
string
Reset input invert enable, true or false, default: false
http://www.capital-micro.com
26
CME-M5 Family Data Sheet
Port
Width
Direction
Description
is_setn_inv
string
Set input invert enable, true or false, default: false
is_clk_inv
string
Clock input invert enable, true or false, default: false
is_od_inv
string
Input data from fabric invert enable, true or false,
default: false
is_oen_inv
string
Output enable invert enable, true or false, default:
false
oen_sel
string
Output enable mux selection control from
bypass/register/vcc(1)/gnd(0)
Default: bypass
od_sel
string
IO input data mux selection control from
bypass/register/vcc(1)/gnd(0)
id_sel
string
IO output to fabric mux selection from
bypass/register
Default: bypass
oen_setn_en
string
Output enable register set enable
oen_rstn_en
string
Output enable register reset enable
od_setn_en
string
IO input register set enable
od_rstn_en
string
IO input register reset enable
id_setn_en
string
IO output register set enable
id_rstn_en
string
IO output register reset enable
2.6.1
Pull-Up/Down/Keeper Resistors
The optional pull-up and pull-down resistors are intended to establish logic High or Low, at unused I/Os.
The pull-up resistor optionally connects each IOB pad to VCCIO and the pull-sown resistor optionally
connects each IOB pad to GND. The resistors are about 50KΩ~100KΩ. Each I/O has an optional keeper
circuit that retains the last logic level on a line after all drivers have been turned off. This is useful to keep
bus lines from floating when all connected drivers are in a high-impedance state. These resistors are
used in a design using the “pull up”, “pull down” and “bus keeper “attributes in Primace .aoc file.
2.6.2
ESD Protection
The Electro-Static Discharge (ESD) protection circuitries protect all device pads against damage from
ESD as well as excessive voltage transients.
The VIN absolute maximum rating in Table 37 specifies the voltage range that I/Os can tolerate.
2.6.3
Drive Strength
CME-M5 I/O current drive strength is programmable 2, 4, 8, 12, 16mA
2.6.4
The Organization of IOBs into Banks
IOBs are allocated among 4 banks, so that each side of the device has one bank, as shown in Figure 1.
For all packages, each bank has independent VCCIO lines. For example, the VCCIO Bank 1 lines are
http://www.capital-micro.com
27
CME-M5 Family Data Sheet
separate from the VCCIO lines going to all other banks.
2.6.5
The I/Os During Power-On, Configuration, and User Mode
With no power applied to the FPGA, all I/Os are in a high-impedance state. The VCCINT and VCCIO
supplies may be applied in any order. Before power-on can finish, VCCINT, VCCIO must have reached
their respective minimum recommended operating levels. At this time, all I/O drivers also will be in a
high-impedance state.
VCCIO and VCCINT serve as inputs to the internal Power-On Reset circuit (POR). When the power is
applied, the FPGA begins initializing its configuration memory. At the same time, the FPGA internally
asserts the Global Set-Reset (GSR), which asynchronously resets all IOB registers to a pull-up state. A
Low level applied to nCONFIG input also serves as a GSR.
At this point, the configuration data is loaded into the FPGA. The I/O drivers remain in a high-impedance
state (with pull-up resistors) throughout configuration. The signal is released during Start-Up, marking
the end of configuration and the beginning of design operation in the user mode. At this point, those I/Os
to which signals have been assigned go active while all unused I/Os remain in a high-impedance state.
2.7 Interconnect
All the CME-M5 family device tile includes Xbar that is interconnect, also called routing resources and
function element. The Xbar passes signals among the various functional tiles of CME-M5 family devices.
There are four kinds of interconnect: Octal lines, Triple lines, Single lines, and Diagonal lines.
Octal lines span the die both horizontally and vertically and connect to one out of every eight and four
Xbars (see Figure 16).
Triple lines connect to one out of every three, two and one Xbars horizontally and vertically (see Figure
16).
The octal and triple lines are very useful for one driver fanouting several tiles which span different tiles
numbers.
triple
xbar
xbar
xbar
xbar
xbar
xbar
xbar
xbar
triple
xbar
xbar
xbar
octal
xbar
xbar
xbar
xbar
xbar
xbar
octal
Figure 16 Octal and Triple Lines
Single and Diagonal lines directly connect lines route signals to neighboring tiles: vertically, horizontally.
These lines most often drive a signal from a "source" tile to an octal and triple line and conversely from
the longer interconnect back to a direct line accessing a "destination" tile.
http://www.capital-micro.com
28
CME-M5 Family Data Sheet
xbar
xbar
xbar
xbar
xbar
xbar
xbar
xbar
xbar
diagonal
single
Figure 17 Single and Diagonal Lines
2.8 PLL
2.8.1 PLL features












Input frequency:
PFD input frequency:
Output frequency:
VCO operating rang:
Clock bypass mode:
Power supply:
Output clock duty-cycle:
Run power current consumption:
Power down current:
Operation junction temperature:
PLL outputs:
Lock detection output
2.8.2
5~472.5 MHz
5 ~ 325 MHz
10 ~ 450 MHz
600 ~ 1200 MHz
Allow bypass of input clock directly to PLL output
DVDD: 1.0 ~ 1.2V, VDDA: 1.0 ~ 1.2V
45-55%
< 2mA
< 20uA (VDDA), < 10uA(DVDD)
-40 to 125 °C
CO0, CO1, CO2, CO3
PLL Hardware Description
CME-M5 family device contains two PLLs (PLL0 and PLL1) with advanced clock management features.
The main goal of a PLL is to synchronize the phase and frequency of an internal or external clock to an
input reference clock. The PFD produces an up or down signal that determines whether the
voltage-controlled oscillator (VCO) needs to operate at a higher or lower frequency. The output of the
PFD feeds the charge pump and loop filter, which produces a control voltage for setting the VCO
frequency. The loop filter also removes glitches from the charge pump and prevents voltage overshoot,
which filters the jitter on the VCO. A divide counter (m) is inserted in the feedback loop to increase the
http://www.capital-micro.com
29
CME-M5 Family Data Sheet
VCO frequency above the input reference frequency. VCO frequency (fVCO) is equal to (m+1) times the
input reference clock (fIN). The input reference clock (fIN) to the PFD is equal to the input clock (fIN)
divided by the pre-scale counter (N+1). Therefore, the feedback clock (fFB) applied to one input of the
PFD is locked to the fIN that is applied to the other input of the PFD. The VCO output can feed 4
post-scale counters (C[0..3]), while the corresponding VCO output from Top/Bottom PLLs can feed ten
post-scale counters (C[0..3]). These post-scale counters allow a number of harmonically related
frequencies to be produced by the PLL.
The figure below shows a simplified block diagram of the major components of the CME-M5 FAMILY
PLL.
pll_lock
Lock
fREF
fIN
clkin
fVCO
pre-divider
1/(n+1)
PFD
Charg
e
Pump
Loop
Filter
VCO
vco_divide_mod
e
DIV2
8
8
post-divider
1/(c0+1)
clkout0
1/(c1+1)
clkout1
1/(c2+1)
clkout2
1/(c3+1)
clkout3
fFB
1/(m+1
)
loop-divider
fbclkin
operation_mod
e
Figure 18 PLL Block Diagram
The dedicated pin CLK0~CLK3, XIN and OSC (internal configuration oscillator) and FPGA logic feed the
Bottom PLL0 clkin as the PLL clock input. The external feedback fbclkin must come from the dedicated
pin CLK0~CLK3 or internal clkout0 if the PLL is used as external feedback mode. The PLL generates
four clock outputs.
The Top PLL1 is same as the PLL0 only when the clkin and fbclkin are come from the dedicated pin
CLK4~CLK7.
2.8.3
PLL Primitive Port Signal Definitions
CME-M5 family PLLs primitive module port signal definition and parameter table are shown in the table
below. The CME-M5 family PLL can be generated using the Primace wizard.
Table 18 Port Definition
Port Name
Type
Description
clkin
Input
PLL reference clock input
fbclkin
Input
Feedback input to the PLL. Come from the dedicated CLK pin or
PLL clkout0.
clkout0
Output
PLL output 0 driving to the global clocks.
clkout1
Output
PLL output 1 driving to the global clocks.
http://www.capital-micro.com
30
CME-M5 Family Data Sheet
Port Name
Type
clkout2
Output
PLL output 2 driving to the global clocks.
clkout3
Output
PLL output 3 driving to the global clocks.
locked
Output
Lock output from lock detect circuit. Active high
pwrdown
Input
Description
Power down control.
1: Power on PLL
0: Power down PLL (default)
Table 19 Parameter Definition
Parameters
pwr_mode
operation_mode
rst_mode
bandwidth_type
vco_phase_shift
co0_enable
Type
Description
string
PLL power mode.
"always_off": make PLL always stay in power down status
"always_on": make PLL always stay in power on status
"mcu_ctrl": mcu control the PLL power
"fp_ctrl": FP control the PLL power
Default: "always_off",
string
PLL feedback source path.
"internal_feedback": select the internal PLL output as the feedback
source
"external_feedback": select the external dedicated CLK pin as the
source
default: "internal_feedback"
string
PLL reset mode
"auto": chip power on to reset the PLL automatically
"mcu_control": MSS 8051 mcu control the PLL reset
test_control: reserved for chip test
default: "auto"
string
PLL bandwidth setting
"low": filters out reference clock jitter but increases lock time
"medium": default
"high": provides a fast lock time and tracks jitter on the reference
clock source
string
VCO phase shift setting
VCO phase select from the "0", "45", "90", "135", "180", "225",
"270", "315" degree.
default: “0”
string
PLL CO0 output enable
"true": PLL CO0 output enable
"false" PLL CO0 output disable
default : "true"
http://www.capital-micro.com
31
CME-M5 Family Data Sheet
Parameters
Type
Description
string
PLL CO1 output enable
"true": PLL CO1 output enable
"false" PLL CO1 output disable
default : "false"
string
PLL CO2 output enable
"true": PLL CO2 output enable
"false" PLL CO2 output disable
default : "false"
co3_enable
string
PLL CO3 output enable
"true": PLL CO3 output enable
"false" PLL CO3 output disable
default : "false"
multiply_by(M)
decimal
PLL loop-divider setting, range is from 1 to 256
divide_by(N)
decimal
PLL pre-divider setting, range is from 1 to 256
co0_divide_by(C0)
decimal
PLL output 0 counter setting, range is from 1 to 256
co1_divide_by(C1)
decimal
PLL output 1 counter setting, range is from 1 to 256
co2_divide_by(C2)
decimal
PLL output 2 counter setting, range is from 1 to 256
co3_divide_by(C3)
decimal
PLL output 3 counter setting, range is from 1 to 256
co0_delay_by
decimal
PLL output 0 to counter delay the VCO cycles , range is from 0
to255
co1_delay_by
decimal
PLL output 1 to counter delay the VCO cycles , range is from 0 to
255
co2_delay_by
decimal
PLL output 2 to counter delay the VCO cycles , range is from 0 to
255
co3_delay_by
decimal
PLL output 3 to counter delay the VCO cycles , range is from 0 to
255
co0_phase_shift
string
PLL output 0 to counter phase shift to VCO, select from the 8
"0","45","90","135","180","225","270","315" degree phase
co1_phase_shift
string
PLL output 1 to counter phase shift to VCO, select from the 8
"0","45","90","135","180","225","270","315" degree phase
co2_phase_shift
string
PLL output 2 to counter phase shift to VCO, select from the 8
"0","45","90","135","180","225","270","315" degree phase
co3_phase_shift
string
PLL output 3 to counter phase shift to VCO, select from the 8
"0","45","90","135","180","225","270","315" degree phase
co1_enable
co2_enable
The CME-M5 family device is a SoC device. The 8051 of MSS can control the PLL parameter such as
loop-divider M and pre-divider N. Post-divider C0, C1, C2 and C3 also can be modified or reconfigured
by 8051 in system. For more details, please refer to 3.7.5 MSS in System Clock Configuration.
2.8.4
Clock Feedback Modes
CME-M5 family PLLs support up to two feedback modes. Each mode allows clock multiplication and
division, phase shifting. The mode is controlled by the operation_mode parameter.
http://www.capital-micro.com
32
CME-M5 Family Data Sheet
(1) Internal Feedback Mode (Frequency Synchronous Mode)
In frequency synthesize mode, the feedback is from the internal VCO, the PLL does not compensate for
any clock networks. This provides better jitter performance because clock feedback into the PFD passes
through less circuitry.
pll_lock
Lock
post-divider
fREF
fIN
clkin
fVCO
pre-divider
1/(n+1)
PFD
Charge
Pump
Loop
Filter
VCO
vco_divide_mode
8 DIV2
8
1/(c0+1)
clkout0
1/(c1+1)
clkout1
1/(c2+1)
clkout2
1/(c3+1)
clkout3
fFB
1/(m+1)
Figure 19 Internal Feedback Mode
fpfd = fIN /(N+1) ;
fVCO = fIN *DIV2*(M+1)/(N+1), DIV2 = 1 or 2 ;
fFB = fVCO / m;
fclkout0 = fIN * (M+1) / ((N+1) * (C0+1));
fclkout1 = fIN * (M+1) / ((N+1) * (C1+1));
fclkout2 = fIN * (M+1) / ((N+1) * (C2+1));
fclkout3 = fIN * (M+1) / ((N+1) * (C3+1));
(2) External Feedback Mode
In external feedback mode, the external feedback input pin (fbclkin) is phase-aligned with the clock input
pin. Aligning these clocks allows you to remove clock delay and skew between the devices. This mode is
supported on all CME-M5 family PLLs. The feedback signal fbclkin comes from internal global clock PLL
clkout0 as shown in Figure 20 or clock pin CLK0~3/CLK4-7 as shown in Figure 21.
The clock pin CLK0~3/CLK4-7 is connected with the pin which is driven by the clkout0 on the board.
http://www.capital-micro.com
33
CME-M5 Family Data Sheet
pll_lock
Lock
post-divider
pre-divider
fIN
fREF
fVCO
vco_divide_mode
1/(n+1)
clkin
Charge
Pump
PFD
Loop
Filter
VCO
1/(c0+1)
clkout0
1/(c1+1)
clkout1
1/(c2+1)
clkout2
1/(c3+1)
clkout3
8
8 DIV2
fFB
1/(m+1)
fbclkin
loop-divider
Figure 20 Feedback Signal from clkout0
pll_lock
Lock
post-divider
pre-divider
fREF
fIN
clkin
fVCO
vco_divide_mode
1/(n+1)
PFD
Charge
Pump
Loop
Filter
VCO 8 DIV2
8
pin
1/(c0+1)
clkout0
1/(c1+1)
clkout1
1/(c2+1)
clkout2
1/(c3+1)
clkout3
IC
fFB
1/(m+1)
fbclkin
loop-divider
clk pin
Figure 21 Feedback Signal from Clock Pin clk0~3/clk4~7
fpfd = fIN /(N+1) ;
fVCO = fIN *DIV2*(M+1)/( (C0+1) (N+1)), DIV2 = 1 or 2 ;
fFB = fVCO / (M+1);
fclkout0 = fIN * (M+1) / (N+1);
fclkout1 = fIN * (M+1) (C0+1) / ((N+1) * (C1+1));
fclkout2 = fIN * (M+1) (C0+1) / ((N+1) * (C2+1));
fclkout3 = fIN * (M+1) (C0+1) / ((N+1) * (C3+1));
2.9 Global Clock & Reset Resources
CME-M5 family global clock resources include the dedicated clock inputs, buffers, and routing. The
clocking infrastructure provides eight low-capacitances and low-skew interconnect global clock lines.
The global clock lines can provide high-performance, low-jitter and low-skew clock source for each
blocks in FPGA. These resources also can be used for high-fanout signals.
http://www.capital-micro.com
34
CME-M5 Family Data Sheet
2.9.1
External Crystal Input
XIN and XOUT are external crystal input and output pins respectively. Their frequency ranges from 10
MHz to 20 MHz. When XIN works as external clock input, input clock connects to global clock tree
through XIN; meanwhile XOUT floats or connects to GND. The connection diagram when the external
crystal works as clock input connection is shown in the figure below.
XOUT
1M
CME Device
XIN
330
22P
22
P
10~20M
Figure 22 External Crystal Input
2.9.2
Clocking Infrastructure
The global clock resources consist of two connected components: two clock generators blocks and
Global Clock routing network. The CME-M5 family clock network infrastructure is shown in the figure
below.
2
IO
…
SEAM
6
Logic
Inputs
LBUF
6
6
…… RBUF
GCLK
Spine
GBUF
Gbuf
4:1*2
4
EMIF
4
gbuf
2:1*6
RBUF
GBUF
2
LBUF
MSS
4
GCLK
2
gclk to EMIF clock
gclk to MSS clock
Clock generator
FP input
LBUF
…… RBUF
…
…
Gclk[4]~Gclk[7]
2
RBUF
Logic
Inputs
Logic
Inputs
LBUF
…
…
6
LBUF
…
Gbuf
4:1*2
4
Gclk[0]~Gclk[3]
4
2
LBUF
…
…
4
gbuf
2:1*6
RBUF
LBUF
…… RBUF
clk4-clk7
6
LBUF
…… RBUF
4
gbuf
2:1*6
PLL1
Mux &
deglitch
FP input
Mux &
deglitch
PLL0
clk0-clk3
XIN
2
gbuf
2:1*6
RBUF
6
Logic
Inputs
4
IO
Gbuf
4:1*2
2
Figure 23 Clock Infrastructure
The clock generator 0 is located in the right of the bottom edge. The clock generator selects from the
http://www.capital-micro.com
35
CME-M5 Family Data Sheet
dedicated pins CLK0 – CLK3, XI, 4 PLL0 outputs and fabric logic signals source to generate four global
clocks to the GBUFs(global buf). The clock generator 1 is placed in the right of the top corner. Its
function is same as the clock generator 0, only the dedicated pin CLK4 - CLK7 replaced the CLK0 –
CLK3. Each clock generators has four multiplexers named as CFG_DYN_SWITCH which can deglitch
and hand off between pairs of clock sources, including a clock from the other clock and generator 4
global clocks to GBUFs. Two clock generators generate 8 global clocks to GBUFs.
GBUFs are located in the vertical spine, just to the right of the FP fabric, as shown schematically in the
above figure. Clocks from the clock generators are distributed to the GBUFs in a skew-balanced tree.
Each GBUF selects from the 8 spine clocks, a set of Gclks to distribute along its respective horizontal
seam. There are six seams, four for Fabric and two for I/O blocks.
The 2 IO GBUFs each select 2 Gclks for their seams. One MSS GBUF and EMIF GBUF also select one
GCLK from the 8 spine clocks for the clock of the MSS and EMIF interface.
Each of the four FP GBUFs selects 6 Gclks. In addition to the 8 spine clocks, the FP GBUFs may also
select from logic inputs from the FP fabric to distribute as Gclks. The four GBUFs are designed not as full
cross-bars, but as sparsely-populated crossbars, in order to reduce circuitry while providing a fully
nonblocking network (every PLL clock can reach every seam without blocking any other clock from
reaching any seam). A special GBUF selects from the 8 spine clocks, two more Gclks to distribute to all
FP fabric seams in a lowskew, recombinant mesh. These two clocks are rebuffered from this point all the
way down to PLBs without further selection or regional gating before final, LBUF muxes, so may be
connected in recombinant grids wherever their logic levels match. This provides a very
low-structural-skew option for any two clocks throughout the entire FP array; the remaining Gclks and
Rclks have flexible selectability and hierarchical gating, so cannot be recombined between seams.
All 8 Gclks in each FP fabric horizontal seam are distributed in a skew-balanced tree to each RBUF.
RBUFs select regional clocks to four rows of PLBs above and four below the seam, in two PLB columns,
or to one SFB above and one SFB below the seam. The two low-skew Gclks are simply rebuffered into
the low-skew Rclk grid; at the top and bottom of their columns, they connect to matching Rclks arriving
from the adjacent seam.
LBUFs are the last stage in the clock tree; they directly drive the flipflops. LBUFs provide local, precise
clock gating. Each two PLBs contain an LBUF, to select a local clock for its 8 registers from the 6 Rclks;
each SFB contains one or more LBUFs, one per clock domain, as needed.
2.9.3
GBUF
The GBUF generated by the Wizard allows a clock or general signal to enter the Global Clock Network
directly.
Table 20 GBUF Port Definition
Port Name
Type
in
Input
Description
GBUF input
http://www.capital-micro.com
36
CME-M5 Family Data Sheet
Port Name
Type
out
Output
Description
GBUF clock output
M5 is designed with two gated global clocks that can be easily controlled by using GBUF_GATE.
Table 21 GBUF_GATE Port Definition
Port Name
Type
clk
Input
Clock input
en
Input
Clock enable, active high
clk_out
Output
2.9.4
Description
GBUF clock output
Clock Switch
The clock generator contains one PLL and a four input deglitch CFG_DYN_SWITCH multiplexer. Each
of the four CFG_DYN_SWITCH multiplexer generates a gclk clock. The CFG_DYN_SWITCH
multiplexer not only can be used as a static clock path, but also can provide seamless clock dynamic
switchover between two clock sources in system, for both startup sequencing and entering/exiting
low-power operating modes.
The primitive CFG_DYN_SWITCH h is used to implement the clock dynamic switching in system. The
CFG_DYN_SWITCH is selected by MSS. About how to use the dynamic clock switch function, see MSS
Subsystem.
Table 22 CFG_DYN_SWITCH Port Definition
Port Name
Type
Description
in0
Input
GCLK clock source 0 input.
in1
Input
GCLK clock source 1 input.
out
Output
Global clock to GBUF.
Table 23 Parameter Descriptions of CFG_DYN_SWITCH
Parameters Name
Type
gclk_mux
digital
Description
Define the CFG_DYN_SWITCH location.
Table 24 Clock Routability Table
GCLK
IN0
IN1
GCLK[0]/
gclk_mux 0
PLL0O0
PLL0O1
CLK0
CLK1
PLL0O2
PLL0O3
GCLK[1]/
gclk_mux 1
PLL0O1
PLL0O3
CLK2
CLK3
PLL0O0
PLL0O2
GCLK[4]
FP
GCLK[2]/
gclk_mux 2
PLL0O1
PLL0O2
CLK1
CLK2
PLL0O0
PLL0O3
XIN
FP
GCLK[3]/
gclk_mux 3
PLL0O0
PLL0O1
CLK0
CLK3
PLL0O2
PLL0O3
XIN
FP
GCLK[4]/
PLL1O0
PLL1O1
CLK4
CLK5
PLL1O2
PLL1O3
http://www.capital-micro.com
FP
FP
37
CME-M5 Family Data Sheet
GCLK
IN0
IN1
gclk_mux 4
GCLK[5]/
gclk_mux 5
PLL1O1
PLL1O3
CLK6
CLK7
PLL1O0
PLL1O2
GCLK[0]
FP
GCLK[6]/
gclk_mux 6
PLL1O1
PLL1O2
CLK5
CLK6
PLL1O0
PLL1O3
XIN
FP
GCLK[7]/
gclk_mux 7
PLL1O0
PLL1O1
CLK4
CLK7
PLL1O2
PLL1O3
XIN
FP
For each of the eight GCLK, the CFG_DYN_SWITCH input in0 and in1 only can be fed as listed in the
table. The MSS can select the in0 or kin1 in system via the special extended SFR. About how to use the
dynamic clock switch function, please refer to MSS Subsystem.
http://www.capital-micro.com
38
CME-M5 Family Data Sheet
3 MSS Subsystem
MSS Subsystem is composed of 200 MHz enhanced 8051 processor, embedded peripherals, SRAM
and other components which are interconnected via the Xbar or hardware connection. This chapter only
describes the MSS system and functions which are special for the CME-M5 family device. The
enhanced r8051xc2 core and peripherals are described in 8051 User Guide.
The MSS features are listed as follows:
 Enhanced 8051MCU
Reduced instruction cycle, 12 times in respect of standard 8051 MIPS, up to 200 MHz
Compatible 8051 instruction system
On-chip debugger system (OCDS), online JTAG debugging
Up to 8M data/code memory
 Embedded SRAM Memory
128KByte single port memory SRAM, up to 200 MHz
Data/code unified addressing, flexible memory configuration
Flexible chip inside and outside memory expand (EMIF)
 Peripheral
1 MDU
3 16-bit Timers, Timer 2 can be used as capture unit
1 16-bit Watch Dog Timer
1 I2C/SMBus Interface
1 SPI Interface
2 Full Duplex Asynchronous Series Ports
1 RTC
4-channel DMA
 Suspend, Idle Mode Power Management
 Chip system management
ISC control
Dynamic clock management
The figure below describes the functions of MSS and connections between MSS and FPGA.
http://www.capital-micro.com
39
CME-M5 Family Data Sheet
MSS
FPGA
Peripheral
RTC
I2C
I2C
SPI
SPI
USART
Interrupt
P0,1,2,3...
P Port
SFR
PLL0
GCLK
PLL1
SFR
SFR
ISC
8051 MCU
EMIF
EMIF
SRAM
Figure 24 MSS Diagram
3.1 8051 Instantiation
In the view of a user design, the 8051 IP is considered to be a macro block as other IP, which will be
instantiated in the RTL code of the user design. The 8051 tile also contains Xbar that is used to connect
with other tiles.
3.1.1
8051 Macro Primitive Description
Table 25 8051 Port Definition
Name
Type
Bus size
Description
Global Interface
clkcpu
I
1
MSS 8051 clock, come from MSS GBUF or internal
OSC.
clkcpuen
O
1
Be low when CPU is in STOP and IDLE mode.
clkperen
O
1
Be low when CPU is in IDLE mode.
resetn
I
1
MSS reset, active low.
ro
O
1
MSS core reset output.
1
Start Watchdog Timer input.
High level on this pin during reset starts the Watchdog
Timer immediately after reset is released.
swd
I
SPI Interface
http://www.capital-micro.com
40
CME-M5 Family Data Sheet
Name
Type
Bus size
Description
scki
I
1
Serial clock input.
scko
O
1
Serial clock output.
scktri
O
1
Serial clock tri-state enables.
ssn
I
1
Slave select input.
misoi
I
1
“Master input / slave output” input pin.
misoo
O
1
“Master input / slave output” output pin.
misotri
O
1
“Master input / slave output” tri-state enable.
mosii
I
1
“Master output / slave input” input pin.
mosio
O
1
“Master output / slave input” output pin.
mositri
O
1
“Master output / slave input” tri-state enables.
spssn
O
8
Eight slave select output.
scli,
I
1
Serial clock input.
sdai,
I
1
Serial data input.
sclo,
O
1
Serial clock output.
sdao,
O
1
Serial data output.
port0i
I
8
8-bit input port.
port0o
O
8
8-bit output port.
port1i
I
8
8-bit input port, combine with int2-7, ccu, t2, rxd1.
port1o
O
8
8-bit output port, combine with ccu, txd1.
port2i
I
8
8-bit input port.
port2o
O
8
8-bit output port.
port3i
I
8
8-bit input port, combine with int0-1, rxd0, t0, t1.
port3o
O
8
8-bit output port, combine with txd0, rxd0o.
clkemif
I
1
EMIF interface clock.
memack
I
1
Memory acknowledges.
memdatai
I
8
Memory data input.
memdatao
O
8
Memory data output.
memaddr
O
23
Memory address.
memwr
O
1
Memory write enable.
memrd
O
1
Memory read enable.
hold
I
1
Hold mode request, active high.
holda
O
1
Hold mode acknowledge signal.
intoccur
O
1
Interrupt occurs in hold mode signal.
waitstaten
O
1
Wait state indicator, active low when 8051 performs a
wait cycle.
I2C Interface
General I/O
EMIF Interface
Hold Interface
http://www.capital-micro.com
41
CME-M5 Family Data Sheet
Table 26 Parameter Table
Parameters
Type
Description
rtc_div_num
String
Mcu rtc divide number.
sync_mode_en
String
Mcu synchronous mode enable,
True: synchronous mode, false: asynchronous mode.
program_file
String
Mcu/8051 program file: *.hex.
3.2 Multiplex of P Port Pins
Some function modules, such as: external interrupt1, USART0, USART1, Timer 0~2, and Compare –
Capture Unit, share pins with port1 and port3. The following shows the details.
Table 27 Port Pin Multiplex
Name
Polarity
Bus size
Type
Alternate
Port
Description
External Interrupts Inputs
int0
I
Low/Fall
port3i[2]
External interrupt 0
int1
I
Low/Fall
port3i[3]
External interrupt 1
int2
I
Fall/Rise
port1i[4]
External interrupt 2
int3
I
Fall/Rise
port1i[0]
External interrupt 3
int4
I
Rise
port1i[1]
External interrupt 4
int5
I
Rise
port1i[2]
External interrupt 5
int6
I
Rise
port1i[3]
External interrupt 6
int7
I
Rise
port1i[6]
External interrupt 7
Serial 0 Interface
rxd0i
I
1
port3i[0]
Serial 0 receive data
rxd0o
O
1
port3o[0]
Serial 0 transmit data
txd0
O
1
port3o[1]
Serial 0 transmit data or receive clock in
mode 0
Serial 1 Interface
rxd1
I
1
port1i[0]
Serial 1 receive data
txd1
O
1
port1o[1]
Serial 1 transmit data
t0
I
Fall
port3i[4]
Timer 0 external input
t1
I
Fall
port3i[5]
Timer 1 external input
t2
I
Fall
port1i[7]
Timer 2 external input
t2ex
I
Fall
port1i[5]
Timer 2 capture trigger
Timers Inputs
Compare – Capture Unit
cc(0)
I
Rise/Fall
port1i[0]
Compare/Capture 0 input
cc(1)
I
Rise
port1i[1]
Compare/Capture 1 input
cc(2)
I
Rise
port1i[2]
Compare/Capture 2 input
http://www.capital-micro.com
42
CME-M5 Family Data Sheet
Name
Polarity
Bus size
Type
Alternate
Port
Description
cc(3)
I
Rise
port1i[3]
Compare/Capture 3 input
Ccubus[0]
O
1
port1o[0]
Compare/Capture 0 Output
Ccubus[1]
O
1
port1o[1]
Compare/Capture 1 Output
Ccubus[2]
O
1
port1o[2]
Compare/Capture 2 Output
Ccubus[3]
O
1
port1o[3]
Compare/Capture 3 Output
3.3 MSS Clock Description
SRAM
clk
GCLK from EMIF
GBUF
GCLK from MSS GBUF
clkemif
clkcpu
8051
Figure 25 MSS Clock
The clock signal gclk comes from the 8 global clocks, see Figure 23. The SRAM clock and clkcpu use
the same clock.
3.4 MSS Memory Map
CME-M5 family integrates 2 blocks of 64 KByte (128 Kbyte in total) SRAM. The 128 KByte SRAM is only
available by MSS. 8051 can access SRAM, at the speed of up to 200 MHz.
The 8051 MCU core can extend both Program Memory and External Data Memory (independently) up to
8 MB by means of dedicated page address register. But CME-M5 family ORs the 8051 write and read
program and external data signals to one write and read signals, this makes the program and external
data memory share the memory space. The program memory is up to increase from address 0, and the
reset and interrupt vectors are stored in the low memory. The 128 KB SRAM can be used as program or
external data memory. Users must separate program memory space from external data memory space,
do not make them overlapped.
The parameter program_file is used to locate the 8051 firmware *.hex file which will be the part of the
initialized data and is add to configuration file.
The following figure describes the CME-M5 family MSS memory map which includes the FP extend
memory.
http://www.capital-micro.com
43
CME-M5 Family Data Sheet
7FFFFF
FP Expand
20000
1FFFF
128K SRAM
000000
Figure 26 MSS Memory Map
3.5 MSS External Memory Interface (EMIF)
EMIF is used to extend the MSS memory, with the address 20000~7FFFFF, which can be used by
Fabric.
The CME-M5 family provides synchronous and asynchronous EMIF for Fabric extended memory which
has the same data/address and control ports but in different timing waveforms. The synchronous or
asynchronous EMIF mode is selected by the parameter sync_mode_en.
Table 28 EMIF Port Description
Port Name
Type
Width
Description
clkemif
Input
1
Fabric EMIF clock. Posedge active.
memaddr
Output
23
EMIF Address, MSS to Fabric.
memdatai
Input
8
Read Data,Fabric to MSS.
memdatao
Output
8
Write data,MSS to Fabric.
memrd
Output
1
Read Enable. Active high.
memwr
Output
1
Write Enable. Active high.
memack
Input
1
Fabric to MSS operation acknowledge.
(1) Synchronous EMIF
The Fabric extended memory uses the same clkcpu as the 8051 clock. The signals are connected
directly to Fabric. For detailed description and waveform on synchronous mode, see the MSS
Subsystem User Guide.
The synchronous EMIF connection with fabric is shown as in figure below:
http://www.capital-micro.com
44
CME-M5 Family Data Sheet
memaddr
memdatao
memdatai
8051
Fabric
memwr
memrd
memack
clkcpu
clkemif
clkcpu
clkcpu
Figure 27 sync_mode_en is “true”
(2) Asynchronous EMIF
The Fabric extended memory is in clkemif clock domain which is different with the 8051 clkcpu clock
domain. The hardware SyncBridge is used to synchronize the control signals from one side clock
domain to the other side clock domain during the memory accessing process. EMIF implements two-way
synchronization between Fabric clock domain and MSS clock domain of Fabric. Each read/write
operation of Fabric extended memory takes about 4 clkemif cycles+ three 8051 clock cycles.
The asynchronous EMIF connection with fabric is shown as in figure below:
memaddr
memdatao
memdatai
8051
Fabric
memwr
memrd
memwr_cpu
memrd_cpu
memack_cpu
SyncBrige
clkemif
clkcpu
clkcpu
clkemif
Figure 28 sync_mode_en is “false”
Control signals of “memrd”, “memwr” and “memack” are in the clkemif domain and generated on the
posedge clkemif. The “memrd”, “memwr”, “memack” control signals and “memaddr”, “memdatao” bus
http://www.capital-micro.com
45
CME-M5 Family Data Sheet
will be held if there is no valid “memack” to be sent to 8051 core. Both “memrd “and “memwr” will be
invalid when “memack” changes to be low, and either “memaddr” or “memdatao” will be delayed for
several periods.
In read cycle, Fabric places the read data to “memdatai” bus and does not output a valid “memack” after
one or several cycles until the fabric data is ready after the “memrd” is asserted. EMIF read waveform is
shown in the following figure.
clkemif
memdatai
memaddr
...
...
...
...
memrd
memack
Figure 29 EMIF Read Waveform
In write cycle, when the “memwr” is asserted, Fabric writes the “memdatao” to the extended memory and
sends a valid “memack” to MSS on the next cycle.
EMIF write waveform is shown in the following figure:
clkemif
memaddr
memdatao
...
...
...
memwr
memack
Figure 30 EMIF Write Waveform
3.6 RTC
The RTC circuitry has analog and digital parts. The 8051 RTC SFRs and control signals are partitioned
to the CME-M5 family device core VCCINT power domain, while the internal time counters relative
circuitry is partitioned to RTC power domain. The RTC analog circuitry is in the RTC power domain. The
external battery supplies the RTC power via the VCCRTC and GNDRTC pins and ensures the normal
operation of the RTC, whether the CME-M5 family device is power on or down. The circuitry partition
http://www.capital-micro.com
46
CME-M5 Family Data Sheet
makes the battery to run for long time.
The RTC crystal connection circuitry is shown in the following figure.
RTCXO
15M
CME Device
RTCXI
22P
22P
32.768K
Figure 31 RTC Crystal Connection Circuitry
3.7 MSS in System Management
Via special extended SFRs, the MSS can control certain components of CME-M5 family, such as special
configuration register, PLL and CFG_DYN_SWITCH multiplexer registers in system. The MSS can
control the ISC, PLL reconfiguration and clock dynamic switch functions directly in system by the
extended SFRs operation.
3.7.1
Device Register
The device registers directly determine and control the device working functions and status. There are
two types of registers: one is the ISC register, the other is the PLL and gclk_switch multiplexer clock
registers.
Table 29 ISC Register
Register
ISCREG
Location
1
Attribute
R/W
Reset Value
0x00000000
Description
[31:8]: Flash start address for read access
[0]: Bit0 ISCEN: reconfiguration enable, be
used to trigger the reconfiguration
sequence, auto clear
0: disable 1:enable
Table 30 Global Clock Register
Register
Location
Attribute
Reset Value
Description
DIVM
6
R/W
0
PLL 0/1 loop-divider M
DIVN
5
R/W
0
PLL 0/1 pre-divider N
DIVC0
4
R/W
0
PLL 0/1 post-divider C0
DIVC1
3
R/W
0
PLL 0/1 post-divider C1
http://www.capital-micro.com
47
CME-M5 Family Data Sheet
Register
Location
Attribute
Reset Value
DIVC2
2
R/W
0
PLL 0/1 post-divider C2
DIVC3
1
R/W
0
PLL 0/1 post-divider C3
0
Dynamical control register
[7:6]: reserved
[5]: Pll 0/1 reset control bit
1:reset PLL, 0: PLL work
[4]: Pll 0/1 power down control bit
0:Down PLL,1:On PLL
[3:0]: see Table 24
[3]: CFG_DYN_SWITCH 3/7 output select
0: gclk source is in0,1: gclk source is in1
[2]: CFG_DYN_SWITCH 2/6 output select
0: gclk source is in0,1: gclk source is in1
[1]: CFG_DYN_SWITCH 1/5 output select
0: gclk source is in0,1: gclk source is in1
[0]: CFG_DYN_SWITCH 0/4 output select
0: gclk source is in0,1: gclk source is in1
DYN_
CTRL[7:0]
3.7.2
0
R/W
Description
ISC Register Frame
When accessing the ISC register, please follow the frame below, which is a 32-bit header followed by a
32-bit write or read data.
Table 31 ISC Header Format
Bit[31:29]
Bit[28]
Bit[27]
Bit[26]
0
0
0
Bit[25]
Bit[24]
Bit[23:10]
Bit[9:0]
0
14’h1f
10 h1
1: write
3’h001
3.7.3
0: read
Extended SFR
There are three types of SFR, ISC SFR, RTC SFR, global clock SFR and direct switch SFR.
The ISC SFR is used to transform the data between the MSS and device register. The MSS uses the
RTC SFRs to access RTC internal registers. The MSS manages the clock functions via the clock SFR.
The MSS accesses and controls the relative function directly via the direct switch SFR.
Table 32 Register Definition
Register
Location
Attribute
Reset
Value
ISCDATD0
AC
R/W
0x00
ISC data [7:0]
ISCDATD1
AD
R/W
0x00
ISC data [15:8]
ISCDATD2
AE
R/W
0x00
ISC data [23:16]
ISCDATD3
AF
R/W
0x00
ISC data [31:24]
Description
http://www.capital-micro.com
48
CME-M5 Family Data Sheet
Register
Location
Attribute
Reset
Value
Description
ISCCMD
F2
R/W
0x00
[7] Write instruction
1: trigger to write, auto-return to zero when
completed.
ISCHEADER0
F3
R/W
0x00
ISC header [7:0]
ISCHEADER1
F4
R/W
0x00
ISC header [15:8]
ISCHEADER2
F5
R/W
0x00
ISC header [23:16]
ISCHEADER3
F6
R/W
0x00
ISC header [31:24]
0x00
[7]WRITE go
1: write serial command,
self-cleared when done
[6:0] reserved
RTCCMD
E5
R/W
RTCSEL
E6
R/W
0x00
[7:5]reserved
[4] 1: write operation, 0: read operation
[3:0] Register Address defined in RTC
(See MSS 8051 Subsystem User Guide).
RTCDATA
E7
R/W
0x00
write or read RTC data
0x00
[7]WRITE go
1: write serial command,
self-cleared when done
[6:0] reserved
GCLKCMD
F8
R/W
GCLKADDR
F9
R/W
0x00
[7]reserved
[6:5]clock generator select
00: clock generator 0
01: clock generator 1
[4] WRITE/READN
1: write
0: read
[3:0] Register address defined in clock register
table
GCLKDATA
FA
R/W
0x00
write to or read from global clock data
0x00
[7] PLL 1 locked status, 1: locked, 0: not locked
[6] PLL 0 locked status, 1: locked, 0: not locked
[5:1] Reserved
[0] MSS clock switch
1: select the gclk
0: select the internal oscillator
ISMDIRCTRL
3.7.4
FB
R/W
MSS In System Configuration
The configuration Image of CME-M5 family consists of FPGA configuration data and MSS programming
code. FPGA configuration data sizes are substantially about 0x30000 byte, while MSS code size
changes with the size of program. The configuration Image is stored in SPI FLASH. Sector is the
http://www.capital-micro.com
49
CME-M5 Family Data Sheet
smallest unit to store Images, one image need about 3 sectors. In addition, one Image can take more
than one sectors. The following figure describes mapping of multi-Image stored in SPI FLASH, therein
the Image size is smaller than three sectors. Configuration packer in Primace can generate .mcf file with
multi Images, while Download can download Images of .mcf into SPI FLASH once. Utilizing ISC features,
CME-M5 family can make use of SPI FLASH space to expand the CME-M5 family device volume in
return, and in other words, CME-M5 family can fulfill several CME-M5 family FPGAs if each of the
multi-image logic can be implemented by CME-M5.
SPI-FLASH
address
0000000
SFR
bitstream
Image1
ISCCMD
ISCREG
firmware
ISCDATA
0030000
ISCHEADER
bitstream
Image2
firmware
MSS
0060000
…
…
…
ISCEN
bitstream
Image3
Configuration
firmware
CME
Device
SPI Interface
Figure 32 ISC
The following example describes that the 8051 program reconfigures the CME-M5 family device using
the Image 2.
Write SPI-FLASH Image starts address to device ISCREG [31:8], and then sets ISCREG [0] to trigger
the configuring process.
ISC steps are as follows:
//Switch the 8051 clock to internal osc
1) ISMDIRCTRL = 0;
//Write frame header, refer to Table 31 ISC Header Format
2) ISCHEADER0 = 0x01;
ISCHEADER1 = 0x7c;
ISCHEADER2 = 0x00;
ISCHEADER3 = 0x22;
//Write SPI-FLASH address and trigger the reconfiguration refer to and Table 32 and Table 29 ISC
Register
3) ISCDATA0 = 1;
ISCDATA1 = 0x00;
http://www.capital-micro.com
50
CME-M5 Family Data Sheet
ISCDATA2 = 0x00;
ISCDATA3 = 0x03;
//Write ISCCMD to enable data write to ISC register
4) ISCCMD = 0x80;
3.7.5
MSS in System Clock Configuration
If you want to use the clock configuration in system, you must get familiar with the clock network path
from the clock sources to the special gclk and its mechanism. For more information, see Table 24 Clock
Routability Table.
(1) PLL Configuration
MSS can reconfigure the PLL and make the PLL output another frequency. The following example is to
change the PLL0 clkout0 frequency from 100 MHz to 50 MHz.
fIN = 20MHz, m = 40, n =1, c0 =8;
fVCO = = fIN * (m+1) /( n+1) = 800MHz;
fclkout0 = fVCO / (c0+1) = fIN * (m+1) /( (n+1) * (c0+1)) = 100MHz;
The steps are listed as follows:
//Switch the 8051 clock to internal osc
1) ISMDIRCTRL = 0;
2) Select the PLL0 in PLL wizard of Primace.
//Write GCLKADDR to select PLL0, DIVC0 (4)
3) GCLKADDR = 00010100B
//Write new c0 to GCLKDATA
4) GCLKDATA = 16
//Write new c0 to PLL C0 register from GCLKDATA
5) GCLKCMD = 0x80
After the steps, the clkout0 of PLL0 will output a 50MHz clock.
(2) GCLK Dynamic Switch
MSS can switch the gclk from one clock to another clock dynamically.
The following example is to switch the GCLK [5] from PLL1 clkout1 to PLL1 clkout0. The steps are listed
as follow:
//Switch the 8051 clock to internal osc
1) ISMDIRCTRL = 0;
2) Select the PLL1 in PLL wizard of Primace.
3) Instantiate the CFG_DYN_SWITCH make the parameter gclk_mux is 5
4) Connect the PLL1 clkout0 to in1 and clkout1 to in0 of CFG_DYN_SWITCH
//Write GCLKADDR to select PLL1, DYN_ CTRL [7:0] (0)
5) GCLKADDR = 00110000B
http://www.capital-micro.com
51
CME-M5 Family Data Sheet
//Write new DYN_ TRL to GCLKDATA, select the clkin1 as the source of gclk[5]
6) GCLKDATA = 00010010
//Write new value to DYN_CTRL registers from GCLKDATA
7) GCLKCMD = 0x80
(3) MSS Clock Dynamic Switch
The MSS can switch MSS clock dynamically between gclk and internal OSC via CFG_DYN_SWITCH.
All the above 8051 In System managements should switch the MSS clock to OSC before the following
actions.
Steps of switching between the gclk and OSC are listed as follows:
//MSS clock switch to gclk
1) ISMDIRCTRL = 0x1
//MSS clock switch to OSC
1) ISMDIRCTRL = 0x0
http://www.capital-micro.com
52
CME-M5 Family Data Sheet
4 Configuration and Debug
4.1 Configuration Mode
There are three configuration modes: JTAG, AS and PS mode. AS, PS mode configuration are controlled
by a mode-select pin MSEL, as described in table below
Note: CME-M5 family with FLASH only provides two modes, AS and JTAG.
Table 33 Configuration Mode
Mode select pin
MSEL
4.1.1
Mode
Description
0
AS
Active Serial mode. The chip will be configured automatically.
Configuration data is stored in the SPI flash.
1
PS
Chip acts as slave.
External microcontroller feeds configuration data into the chip.
0/1
JTAG
JTAG-based configuration. This mode takes higher privilege over AS
and PS modes
AS Mode
In AS configuration mode, CME-M5 family POR or pin nCONFIG reset reads configuration data from SPI
flash 0 address automatically, and configures FPGA and embedded RAM of MSS.
The following figure illustrates the AS mode of CME-M5 family without FLASH.
http://www.capital-micro.com
53
CME-M5 Family Data Sheet
VCC
VCC
10K
10K
10K
Pin 1
Pin 2
TMS
TDI
TCK
TDO
MSEL
nCONFIG
nCS
sclk
SDO
SDI
JTAG
10K
SO
SI
SPI Flash
sclk
CS#
Figure 33 AS Configuration without Flash
The following figure illustrates the AS mode of CME-M5 family with FLASH.
VCC
VCC
10K
10K
10K
Pin 1
Pin 2
TMS
TDI
TCK
TDO
nCONFIG
MSEL
JTAG
10K
Figure 34 AS Configuration with Flash
4.1.2
PS Mode
In the PS mode, CME-M5 family works as slave device, receive configuration data from external master
controller passively. SPI Master cannot read configuration data from CME-M5 family.
The following figure shows CME-M5 family in PS configuration.
http://www.capital-micro.com
54
CME-M5 Family Data Sheet
VCC
VCC
10K
10K
10K
Pin 1
Pin 2
TMS
TDI
TCK
VCC
TDO
MSEL
nCONFIG
nCS
sclk
SDO
SDI
JTAG
10K
SO
SI
sclk
SPI Master
CS#
Figure 35 PS Configuration
4.1.3
JTAG Mode
There are two JTAG devices inside CME-M5 family, one is for fabric debugging and configuration,
another is for OCDS of MCU. These two JTAG devices are cascaded into one JTAG chain according to
the IEEE standard.
In JTAG mode, JTAG host computer configures and debugs both FPGA and MSS through CME-M5
family JTAG interface.
JTAG interface has higher priority than other configuration modes, and can download configuration files
and debug device.
4.2 SPI Flash
SPI-Flash is used for configuring CME-M5 family and can be operated in user mode, no matter it is
embedded or external configured SPI-Flash.
(1) Using embedded SPI-Flash
Invoke spi_interface in user design, to use SPI-FLASH in CME-M5 family device. For embedded
SPI-Flash datasheet, please refer to GD25QXX_Rev1.0.pdf.
Table 34 Embedded SPI Interface Port
Port Name
Type
Description
sclk
Input
spi flash input clock
sdo
output
spi flash serial output data
http://www.capital-micro.com
55
CME-M5 Family Data Sheet
Port Name
Type
Description
cson
Input
spi flash chip select,low active
sdi
Input
spi flash serial input data
(2) Using External SPI-Flash
When using external SPI-Flash, follow the connection illustrated in Figure 33, and set corresponding IO
as user IO during user design. See SPI related contents of 7.1 Pins Definitions and Rules and 7.2 Pin
List .
4.3 ISC
ISC (In System Configuration) enables MSS to re-configure CME-M5 family dynamically or statically.
ISC can only be achieved in AS mode.
During static re-configuration, MSS program writes addresses and instructions to ISC corresponding
SFR to make CME-M5 family re-load corresponding Image from certain SPI Flash address, to achieve
the reconfiguration of CME-M5 family device.
During dynamic re-configuration, MSS program reads Image from external (USART or other interfaces),
writes to corresponding Image space through SPI interface, and updates the Image. Then MSS writes
addresses and instructions to corresponding ISC SFR to configure CME-M5 family with the updated
Image. For more details, see 3.7.4 MSS In System Configuration.
4.4 Debug
There are two JTAG devices inside CME-M5 family: one is for fabric debugging and configuration, the
other is for OCDS of MCU, the two JTAG devices are cascaded into one JTAG chain according to the
IEEE standard. The CME-M5 family device identifies the different device operations and transforms the
data to the right JTAG device automatically.
4.5 Power-On-Reset (POR)
CME-M5 family device has internal POR circuits to monitor VCCINT and VCCIO voltage levels during
power-up. The POR circuit can keep the device in reset state until VCCINT and VCCIO reach the trigger
point. After the device enters into user mode, the POR circuit continues monitoring the VCCINT voltage
levels, but does not monitor VCCIO voltage anymore. POR is also controlled by external manual reset
control signal.
The POR circuit has the following features:
Power-up monitor, trigger point:
http://www.capital-micro.com
56
CME-M5 Family Data Sheet
- VCCINT: 0.75V-1.08V
Power down monitor, trigger point:
- VCCINT: 0.65V-0.9V
Delay time: typical 4.9ms, range 3.3ms ~ 7.4ms
4.6 eFUSE Program
The eFUSE is a macro that contains electrically programmable fuses which is One Time Program
memory. Using Primace tool E-Fuse Burner can program the eFUSE via CME download cable. The two
additional FUSE_CLK, VDDQ pins and JTAG pins should be connected as shown in the following figure.
For more information about FUSE_CLK and VDDQ pins definition and pinouts, see Chapter 7 Pins and
Package.
VCC
VCC
10K
Pin 1
Pin 2
10K
10K
TMS
TDI
TCK
TDO
nCONFIG
MSEL
VDDQ
FUSE_CLK
JTAG
10K
1K
Figure 36 eFUSE Program Schematic
http://www.capital-micro.com
57
CME-M5 Family Data Sheet
5 Security
The CME-M5 family device has several security levels to help protect customer products and benefits.
Configuration bitstream encryption using 128 bit AES
Efuse-based protection mechanism
SPI-based flash protection mechanism
5.1 Bitstream Generation Security Level
During the test and debug phase of a design, you can decide to leave the JTAG interface in the design
for possible maintenance or for random check-ups after the design goes into production. While this is
handy for the designer, it can leave a potential security hole.
The Bitstream Generator adds security information to configuration .acf file based on the security setting
in Primace. As shown in the following table, the Bitstream Generator has three settings: the first one is
the default, and the remaining two (Level1 and Level2) are optional to provide additional security. JTAG
can be fully or partially disabled via JTAG selection (Except special configuration memory).
Table 35 Bitstream Generator Security Level Settings
Security Level
Description
None
Default. JTAG unrestricted access to all configuration memory and functions
Level1
Disable JTAG to access the SPI-FLASH, fabric configuration memory or MSS
memory
Level2
Disable JTAG to access any memory completely
There are three settings for Bitstream Generator in Primace: prot_flagn, read_disable0 and
read_disable1. After the setting is completed, the Bitstream Generator will add security bits to the
configuration bitstream. User can decide to use a 128-bit key set as the AES algorithm input to encrypt
the bitstream according to the three level settings of Primace Bitstream Generator.
(1) prot_flagn
If Bitstream Generator is set to prot_flagn, the prot_flagn security bit will be programmed to SPI-FLASH.
The security bit is employed to protect flash content, to prevent fabric and register reading/writing, and to
prevent accessing MCU memory space via OCDS. Once prot_flagn is asserted, only several flash
instructions can be sent to flash, e.g. WREN, BE, RDSR, WRSR. So The SPI-FLASH can’t be accessed
by JTAG except the erase operation.
An internal signal prot_flagn is employed to obtain value of the security bit and control the security
protection. When power-up, the prot_flagn security bit stored in the SPI-FLASH is not loaded to the
internal prot_flagn, so the internal prot_flagn is LOW and active by default. User must send a specified
set of JTAG instruction to transfer the prot_flagn bit from SPI-FLASH to internal prot_flagn signals which
is then used to provide security control over the whole chip referring to user setting.
http://www.capital-micro.com
58
CME-M5 Family Data Sheet
(2) read_disable0
The security signal read_disable0 is stored in the internal register after the device is configured by the
bitstream. The signal read_disable0 that is high active is used to prevent fabric chain reading, and to
prevent accessing MCU memory space via OCDS.
When power-up, read_disable0 is 0 by default to enable JTAG read. The read_disable0 bit stored in the
internal register will load to the read_disable0. If it is written with 1, then it can’t be changed by writing
with 0.
(3) read_disable1
The security signal read_disable1 is generated by the SECU chain. The signal read_disable1 is also
used to prevent fabric chain reading, and to prevent accessing MCU memory space via OCDS.
When power-up, read_disable1 is 1 to enable the security protection. If the SECU chain matches the
fixed data pattern, read_disable1 will change to 0, so that read_disable1 is de-asserted and JTAG can
read FPGA static configuration SRAM and MCU memory, otherwise, the JTAG will be disabled.
The JTAG can’t read the fabric chain and MCU memory space if anyone of the three security signals is
active.
5.2 On-Chip eFuse
The CME-M5 family device has two 128-bit eFUSE. The eFUSE0 is used to store the 128-bit AES cipher
key that is used to decrypt the encrypted configuration bitsream generated by Primace Bitgen tool. The
eFUSE1 is used to store the security protection bits and other reserved information.
The following table provides more information about security bit.
Table 36 Security Bit
eFUSE1 Bit
Description
[5]
Decryption flag:
1: the key stored in Efuse0 used to decrypt the bitstream. The key must match
with the key that is used for encryption by user in Primace.
0: Bitstream decryption is not required
[4]
JTAG & OCDS disabled:
1: disable the JTAG operation, whether the Security Level Settings is set or not.
The cipher key and security bits can be programmed to eFUSE0/1 by Primace tool to prohibit the cloners,
over builders, and reverse engineers from embezzling the user design. Even if the embedded or external
SPI-FLASH content is copied completely, the user’s intellectual property rights can still be protected, as
long as the cipher key stored in Efuse0 is not decrypted.
5.3 Embedded SPI-Flash Hidden Bitstream
The embedded SPI-Flash is used to store CME-M5 family configuration data.
http://www.capital-micro.com
59
CME-M5 Family Data Sheet
The CME-M5 family device bitstream is hidden during configuration because the Flash is inside the
FPGA. This configuration provides a starting point for security in a design, where it cannot directly be
copied from the Flash.
5.4 AES Security
Advanced Encryption Standard (AES) is a specification for the encryption of electronic data. The AES
algorithm is adopted to encrypt the configuration bitstream using a 128-bit key. The CME-M5 family will
decrypt the encrypted bitstream using the 128-bit key stored in Efuse0. The configuration succeeds if the
two 128-bit keys match, otherwise the configuration fails and the device can’t work.
The following figure illustrates the encryption and decryption process.
Step 3. Configure the device using
encrypted configuration data.
Step 1. Generate the encrypted configuration data and store
in configuration memory.
Primace
abc
Bitgen
Configuratio
n Data
AES
Encryptor
Encrypted
Configuration
Data
Encryption Key
Programming
File
Memory
Storage
Encrypted
Configuration
Data
Encrypted
Configuration
Data
AES Decryptor
Check with
Expected Value
Efuse
Volatile Key
Storage
Security Setting
Volatile Key
FPGA
Yes/No
Step 2. Program
volatile key into Efuse. Volatile
Key
Figure 37 Encryption and Decryption Process
http://www.capital-micro.com
60
CME-M5 Family Data Sheet
6 DC & Switching Characteristics
All parameter limits are representative of worst-case supply voltage and junction temperature conditions.
The following information applies unless otherwise noted: AC and DC characteristics are
specified using the same numbers for both commercial and industrial grades. All parameters
representing voltages are measured with respect to GND.
6.1 DC Electrical Characteristics
6.1.1
Absolute Maximum Ratings
Stresses beyond those listed under Absolute Maximum Ratings may cause permanent damage to the
device. These are stress ratings only, and functional operation of the device at these or any other
conditions beyond those listed under the Recommended Operating Conditions is not implied. Exposure
to absolute maximum conditions for extended periods of time adversely affects device reliability.
Table 37 Absolute Maximum Ratings
Symbol
Description
VCCINT
VCCIO
Min
Max
Units
Internal supply voltage
-0.5
1.3
V
I/O driver supply
voltage
-0.5
5.5
V
Voltage applied to all
User I/O pins and
dual-purpose pins
VIN
Voltage applied to all
Dedicated pins
Electrostatic Discharge
Voltage
VESD
Conditions
Driver in a high-impedance
state
-0.95
V
-0.8
V
Human body model
0
±2000
V
Charged device model
-
±500
V
Machine model
-
±200
V
TJ
Junction temperature
-40
125
°C
TSTG
Storage temperature
–65
150
°C
6.1.2
Power Supply Specifications
Table 38 Supply Voltage Thresholds for Power-On Reset
Symbol
Description
Min
Max
Units
VCCINTT
Threshold for the VCCINT supply
0.7
V
VCCIOT
Threshold for the VCCIO supply
2.26
V
http://www.capital-micro.com
61
CME-M5 Family Data Sheet
Table 39 Supply Voltage Ramp Rate
Symbol
Description
Min
Max
Units
VCCINTR
Ramp rate from GND to valid
VCCINT supply level
10
ms
VCCIOR
Ramp rate from GND to valid
VCCIO supply level
10
us
Note: The VCCINT must be powered to threshold before the VCCIO.
V
VCCIO
3V
VCCIOT
TVCCIOR
TVCCINTR
VCCINT
1V
VCCINTT
T1
T3
T2 T4
T
T4>T1
Figure 38 Power on waveform
6.1.3
General Recommended Operating Conditions
Table 40 Recommended Basic Operating Conditions for Single I/O
Symbol
Min
Typ
Max
Junction temperature
-40°C
25°C
85°C
VCCIN
T
Core power
1.0V
1.1V
1.21V
VCCA_
PLL
PLL analog power
1.0V
1.1V
1.21V
I/O supply voltage @ 3.3V
2.97V
3.3V
3.63V
I/O supply voltage @2.5V
2.25V
2.5V
2.75V
I/O supply voltage @1.8V
1.62V
1.8V
1.98V
I/O supply voltage @1.5V
1.35V
1.5V
1.65V
TJ
VCCIO
VIH
VIL
Parameter
Input High Voltage @3.3V LVCMOS
2V
VCCIO +0.3
Input High Voltage @2.5V LVCMOS
1.7V
VCCIO +0.3
Input High Voltage @1.8V LVCMOS
0.65*
VCCIO
VCCIO +0.3
Input Low Voltage @3.3V LVCMOS
-0.3
0.8V
Input Low Voltage @2.5V LVCMOS
-0.3
0.7V
http://www.capital-micro.com
62
CME-M5 Family Data Sheet
Symbol
Parameter
Min
Input Low Voltage @1.8V LVCMOS
VT+
VT-
Typ
0.35*
VCCIO
-0.3
Schmitt trig Low to High threshold point @3.3V
0.6*
VCCIO
Schmitt trig Low to High threshold point @2.5V
0.6*
VCCIO
Schmitt trig Low to High threshold point @1.8V
0.6*
VCCIO
Schmitt trig High to Low threshold point @3.3V
0.4* VCCIO
Schmitt trig High to Low threshold point @2.5V
0.4* VCCIO
Schmitt trig High to Low threshold point @1.8V
0.4* VCCIO
TJ
Junction Temperature
IL
Input Leakage Current
±1μA
Output low voltage @IOL=2,4…16mA @3.3V
0.4V
Output low voltage @IOL=2,4…16mA @2.5V
0.7V
Output low voltage @IOL=2,4…16mA @1.8V
0.45V
Output high voltage @ IOH=2,4…16mA @3.3V
2.9V
Output high voltage @ IOH=2,4…16mA @2.5V
1.7V
Output high voltage @ IOH=2,4…16mA @1.8V
VCCIO -0.45
VOL
VOH
-40°C
Low level output current @VOL=0.4V
VCCIO =3.3V
25°C
Min
Typ
Drive Strength=4mA
>4mA
6
Drive Strength=8mA
>8mA
16
Drive Strength=12mA
>12mA
19
Drive Strength=16mA
>16mA
25
Min
Typ
Drive Strength=4mA
>4mA
5
Drive Strength=8mA
>8mA
14
Drive Strength=12mA
>12mA
16.8
Drive Strength=16mA
>16mA
21
Min
Typ
Drive Strength=4mA
>4mA
4
Drive Strength=8mA
>8mA
10
Drive Strength=12mA
>12mA
13
Drive Strength=16mA
>16mA
16
Min
Typ
Low level output current @VOL=0.7V
VCCIO =2.5V
IOL
Max
Low level output current @VOL=0.45V
VCCIO =1.8V
Low level output current @VOL=0.375V
VCCIO =1.5V
Drive Strength=4mA
2.8
Drive Strength=8mA
7
http://www.capital-micro.com
125°C
Max
Max
Max
Max
63
CME-M5 Family Data Sheet
Symbol
Parameter
Min
Drive Strength=12mA
8.4
Drive Strength=16mA
11
High level output current @VOH=2.9V
VCCIO =3.3V
Min
Typ
Drive Strength=4mA
>4mA
6
Drive Strength=8mA
>8mA
17
Drive Strength=12mA
>12mA
18
Drive Strength=16mA
>16mA
25
Min
Typ
Drive Strength=4mA
>4mA
5.4
Drive Strength=8mA
>8mA
14
Drive Strength=12mA
>12m
16
Drive Strength=16mA
>16mA
19
Min
Typ
Drive Strength=4mA
>4mA
4
Drive Strength=8mA
>8mA
11
Drive Strength=12mA
>12mA
13
High level output current @VOH=2.1V
VCCIO =2.5V
IOH
Typ
High level output current @VOH= VCCIO -0.45
VCCIO =1.8V
Drive Strength=16mA
Max
Max
Max
Max
15
High level output current
@VOH= VCCIO -0.375 VCCIO =1.5V
Min
Typ
Drive Strength=4mA
2.8
Drive Strength=8mA
7.8
Drive Strength=12mA
8.5
Drive Strength=16mA
11
Max
Table 41 Recommended Operating Conditions of Programmable Transmitter Features
Supported Voltage and
Current Capabilities
Attributes
Value
4mA
IOH
8mA
12mA
16mA
Drive strength
4mA
IOL
8mA
12mA
16mA
slow
Slew-rate control
Rising Slew
nominal
fast
http://www.capital-micro.com
64
CME-M5 Family Data Sheet
Supported Voltage and
Current Capabilities
Attributes
Value
slow
nominal
Falling Slew
fast
TX impedance control
Pull up
75kΩ
Pull down
50kΩ
keeper
50kΩ to 75kΩ
Note: All IOs support single-ended IO standards, such as LVCMOS. Measured between 10% and 90%
VCCIO
Table 42 Quiescent Current Requirements
Symbol
Description
IFPINTQ
Quiescent VCCINT supply current only for
Fabric.
18
mA
IMSSINTQ
Quiescent VCCINT supply current only for
MSS include the 8051 SRAM (128KB).
2
mA
Quiescent VCCINT supply current for
whole device.
20
mA
IINTQ
Device
Typical(1)
Maximum(2)
Units
Note:
(1) The numbers in this table are based on the conditions set forth in General Recommended Operating
Conditions.
(2) Quiescent supply current is measured with all I/O drivers in a high-impedance state and with all
pull-up/pull-down resistors at the I/O pads disabled. Typical values are characterized using typical
devices at room temperature (TJ of 25°C at VCCINT = 1.1V).The FPGA is programmed with a
"blank" configuration data file (i.e., a design with no functional elements instantiated).The maximum
limits are tested for each device at the respective maximum specified junction temperature and at
maximum voltage limits with MAX VCCINT and VCCIO.
(3) The maximum numbers in this table indicate the minimum current each power rail requires in order
for the FPGA to power-on successfully.
6.2 Switching Characteristics
Timing parameters and their representative values are selected for inclusion below either because they
are important as general design requirements or they indicate fundamental device performance
characteristics.
http://www.capital-micro.com
65
CME-M5 Family Data Sheet
6.2.1
Clock Performance
Table 43 Recommended Operating Frequency of Global Clock
6.2.2
Symbol
Max Frequency
Units
GCLK
500
MHz
I/O Performance
Table 44 Recommended Operating Frequency of I/O
IO Standard
Primary Usage
Max
Frequency
LVCMOS/LVTTL
1.5v/1.8v/2.5v/3.3v general purpose
160 MHz
6.2.3
PLB Performance
Table 45 Recommended Operating Frequency of PLB
Symbol
Description
Speed
Min
Units
Max
ADD16
16 bit adder performance @
recommended operating condition.
400
ADD32
32 bit adder performance @
recommended operating condition.
360
Add64
64 bit adder performance @
recommended operating condition.
215
CNT8
8 bit counter performance @
recommended operating condition.
720
CNT16
16 bit counter performance @
recommended operating condition.
640
CNT32
32 bit counter performance @
recommended operating condition.
580
6.2.4
MHz
EMB5K Performance
Table 46 Recommended Operating Frequency of EMB5K
Symbol
EMB5K
Description
Speed
Min
EMB5K performance at
recommended operating condition.
http://www.capital-micro.com
Units
Max
MHz
200
66
CME-M5 Family Data Sheet
6.2.5
DSP Performance
Table 47 Recommended Operating Frequency of DSP
Symbol
DSP
Description
Speed
Min
Units
Max
DSP using register path.
200
DSP not using the register path.
200
http://www.capital-micro.com
MHz
67
CME-M5 Family Data Sheet
7 Pins and Package
7.1 Pins Definitions and Rules
Table 48 Pins Definitions and Rules
Pin Name
Direction
Description
User I/O Pins
IOXX_#
inout
user I/O pin
Multi-Function Pins
Multi-function pins are labeled IOXXX/YYY_#, where YYY represents
one or more of the following functions in addition to being general
purpose user I/O.
If not used for their special function, these pins can be user I/O.
IOXXX/ZZZ_#
Multi-Function Pins: SPI serial configuration Pins
SCLK
input/output
In passive serial configuration mode, SCLK is a clock input used to
clock configuration data from external device source into device.
In active serial configuration mode, SCLK is a clock output from device.
The pin can be used as regular user I/Os after configuration.
SDI
input
Dedicated configuration data input pin in AS mode.
The pin can be used as regular user I/Os after configuration in AS mode
output
Active serial data output from the device.
The pin can be used as regular user I/Os after configuration in AS
mode.
This pin is only user I/O pin when the device is in PS mode.
output
or input
Chip select output to enable/disable a serial configuration device.
This output is used during AS mode. The pin can be used as regular
user I/Os after configuration in AS mode.
it is used as chip selection control (input) during PS.The pin can be used
as regular user I/Os after configuration in PS mode.
SDO
nCS
Multi-Function Pins: Configuraiton Pins
CONF_DONE
output
This is a dedicated configuration status pin, the pin will output high
during configuration. The pin can be used as regular user I/Os after
configuration.
0: Active Serial mode, 1 Passive Serial mode.
The pin can be used as regular user I/Os after configuration.
MSEL
Multi-Function Pins: Clock Pins
CLKX
input
These clock pins connect to Global Clock Buffers.
These pins become regular user I/Os when not needed for clocks.
Multi-Function Pins: Efuse clock
FUSE_CLK
input
Efuse program clock.
http://www.capital-micro.com
68
CME-M5 Family Data Sheet
Pin Name
Direction
Description
Dedicated Pins: JTAG
TCK
input
TCK Input Boundary-Scan Clock.
TDI
input
TDI Input Boundary-Scan Data Input.
TDO
output
TDO Output Boundary-Scan Data Output.
TMS
input
TMS Input Boundary-Scan Mode Select.
Dedicated Pins: JTAG
nCONFIG
input
Chip global reset input. Active low.
Dedicated Pins: Crystal Pins
XIN
input
External crystal input.
If not used it is better to connect to GND.
XOUT
output
Output to crystal. Not used can be floating.
Dedicated Pins: RTC Pins
RTCXI
input
External crystal input for RTC 32K clock.
If not used it is better to connect to GND.
RTCXOUT
output
32K clock output to crystal.
If not used can be floating.
VCCRTC
N/A
RTC power. 2.0-3.3V.
GNDRTC
N/A
RTC ground.
Dedicated Pins: Power
VCCIO
N/A
Digital power for IO.
VCCINT
N/A
Digital power for core, 1.1V.
VCCA_PLL
N/A
Analog power for PLLs, 1.1V.
VDDQ
N/A
Efuse program power.
GND
N/A
Digital ground.
Note:
(1) VCCIO_0 and VCCIO_2 MUST be powered at 3.3V.
(2) VDDQ should connect to the pin6 of 10 pin header on CME JTAG cable and use a 1K resistor to
make the signal pull down to GND for programming the Efuse.
(3) FUSE_CLK should connect to CME JTAG cable 10 pin header pin8.
7.2 Pin List
7.2.1
LQFP144 Package Pin List
http://www.capital-micro.com
69
CME-M5 Family Data Sheet
Table 49 LQFP144 Package Pin List
No.
LQFP144
No.
LQFP144
No.
LQFP144
1
VCCIO_0
40
IO31_1
79
CONF_DONE_2
2
GND
41
VCCIO_1
80
IO56/MSEL_2
3
IO1_0
42
IO32_1
81
IO57/SDO_2
4
IO2_0
43
IO33_1
82
VCCIO_2
5
IO3_0
44
VCCINT
83
IO58/SCLK_2
6
IO4_0
45
IO34_1
84
IO59_2
7
IO5_0
46
IO35_1
85
GND
8
IO6_0
47
GND
86
VCCINT
9
IO7_0
48
IO36_1
87
IO60_2
10
IO8/nCS_0
49
IO37_1
88
IO61_2
11
IO9_0
50
IO38_1
89
VCCIO_2
12
VCCINT
51
IO39_1
90
GND
13
IO10_0
52
VCCIO_1
91
IO62_2
14
IO11/SDI_0
53
IO40_1
92
IO63_2
15
IO12_0
54
IO41_1
93
IO64_2
16
IO13_0
55
GND
94
VCCINT
17
IO14_0
56
IO42_1
95
IO65_2
18
IO15_0
57
IO43_1
96
IO66_2
19
IO16_0
58
IO44_1
97
GND
20
IO17_0
59
IO45_1
98
IO67_2
21
IO18_0
60
IO46_1
99
IO68_2
22
IO19_0
61
IO47_1
100
IO69_2
23
VCCIO_0
62
IO48/CLK0_1
101
IO70_2
24
GND
63
IO49/CLK1_1
102
IO71_2
25
IO20_0
64
VCCIO_1
103
IO72_2
26
IO21_0
65
IO50/CLK2_1
104
VCCIO_2
27
IO22_0
66
IO51/CLK3/FUSE_CLK_1
105
IO73_2
28
IO23_0
67
IO52_1
106
IO74_2
29
IO24_0
68
IO53_1
107
IO75_2
30
VCCINT
69
IO54_1
108
IO76_2
31
IO25_0
70
VDDQ_1
109
RTCXI_3
32
IO26_0
71
XIN_1
110
RTCXO_3
33
IO27_0
72
XOUT_1
111
VCCRTC
34
IO28_0
73
VCCA_PLL _2
112
GNDRTC
35
GND
74
nCONFIG_2
113
IO77_3
36
VCCIO_0
75
TMS_2
114
IO78/CLK4_3
37
IO29_1
76
TDI_2
115
IO79/CLK5_3
38
IO30_1
77
TCK_2
116
VCCIO_3
39
GND
78
TDO_2
117
IO80/CLK6_3
http://www.capital-micro.com
70
CME-M5 Family Data Sheet
No.
LQFP144
118
IO81/CLK7_3
119
IO82_3
120
IO83_3
121
IO84_3
122
GND
123
IO85_3
124
IO86_3
125
IO87_3
126
IO88_3
127
IO89_3
128
VCCIO_3
129
IO90_3
130
IO91_3
131
IO92_3
132
IO93_3
133
IO94_3
134
IO95_3
135
GND
136
IO96_3
137
VCCINT
138
IO97_3
139
IO98_3
140
IO99_3
141
VCCIO_3
142
GND
143
IO100_3
144
IO101_3
http://www.capital-micro.com
71
CME-M5 Family Data Sheet
7.2.2
TQFP100 Package Pin List
Table 50 TQFP-100 Package Pin List
No.
TQFP100
No.
TQFP100
No.
TQFP100
1
VCCIO_0
37
IO29_1
73
IO49_2
2
GND
38
IO30 _1
74
VCCIO_2
3
IO1_0
39
IO31/CLK0_1
75
IO50_2
4
IO2_0
40
IO32/CLK1_1
76
IO51_3
5
IO3_0
41
VCCIO_1
77
IO52/CLK4_3
6
IO4_0
42
IO33/CLK2_1
78
IO53/CLK5_3
7
IO5_0
43
IO34/CLK3/FUSE_CLK_1
79
VCCIO_3
8
IO6/nCS_0
44
IO35_1
80
IO54/CLK6_3
9
IO7_0
45
IO36_1
81
IO55/CLK7_3
10
VCCINT
46
IO37_1
82
IO56_3
11
IO8_0
47
VDDQ_1
83
IO57_3
12
IO9/SDI_0
48
GND
84
GND
13
IO10_0
49
XIN_1
85
IO58_3
14
IO11_0
50
XOUT_1
86
IO59_3
15
IO12_0
51
VDDA _2
87
IO60_3
16
IO13_0
52
nCONFIG_2
88
IO61_3
17
GND
53
TMS_2
89
IO62_3
18
IO14_0
54
TDI_2
90
VCCIO_3
19
IO15_0
55
TCK_2
91
IO63_3
20
IO16_0
56
TDO_2
92
IO64_3
21
IO17_0
57
CONF_DONE_2
93
IO65_3
22
IO18_0
58
IO39/MSEL_2
94
IO66_3
23
IO19_0
59
IO40/SDO_2
95
GND
24
IO20_0
60
VCCIO_2
96
IO67_3
25
VCCIO_0
61
IO41/SCLK_2
97
VCCINT
26
VCCINT
62
GND
98
IO68_3
27
IO21_1
63
VCCINT
99
IO69_3
28
IO22_1
64
IO42_2
100
IO70_3
29
VCCIO_1
65
IO43_2
30
IO23_1
66
IO44_2
31
IO24_1
67
VCCINT
32
GND
68
GND
33
IO25_1
69
IO45_2
34
IO26_1
70
IO46_2
35
IO27_1
71
IO47_2
36
IO28_1
72
IO48_2
http://www.capital-micro.com
72
CME-M5 Family Data Sheet
7.2.3
FBGA256 Package Pin List
Table 51 FBGA256 Package Pin List
No.
BGA256
No.
BGA256
No.
BGA256
M14
VCCIO_0
B16
IO31_0
A15
IO60_1
H7
GND
F14
IO32_0
A10
IO61_1
H8
GND
D16
IO33_0
B10
IO62_1
N13
IO1_0
D15
IO34_0
C9
IO63_1
M12
IO2_0
G11
IO35_0
D9
IO64_1
L12
IO3_0
C16
IO36_0
E9
IO65_1
K12
IO4_0
C15
IO37_0
A9
IO66_1
N14
IO5_0
E12
IO38_0
B9
IO67_1
P15
IO6_0
J7
GND
A8
IO68_1
P16
IO7_0
J8
GND
B8
IO69_1
D2
IO8_0
E14
VCCIO_0
C8
IO70_1
R16
IO9_0
F12
IO39_1
C10
VCCIO_1
K11
IO10_0
H12
IO40_1
C7
VCCIO_1
G6
VCCINT
H13
IO41_1
D8
IO71_1
N16
IO11_0
C14
IO42_1
E8
IO72_1
N15
IO12_0
D14
IO43_1
F8
IO73_1
H2
IO13_0
J9
GND
A7
IO74_1
L14
IO14_0
J10
GND
B7
IO75_1
L13
IO15_0
D11
IO44_1
F6
IO76_1
L16
IO16_0
D12
IO45_1
F7
IO77_1
L15
IO17_0
A13
IO46_1
C6
IO78_1
J11
IO18_0
B13
IO47_1
A6
IO79_1
K16
IO19_0
A16
VCCIO_1
C5
GND
K15
IO20_0
C13
VCCIO_1
C12
GND
J16
IO21_0
A14
IO48_1
B6
IO80_1
J15
IO22_0
B14
IO49_1
E7
IO81_1
K14
VCCIO_0
E11
IO50_1
E6
IO82_1
G14
VCCIO_0
E10
IO51_1
A5
IO83_1
H9
GND
A12
IO52_1
A2
IO84_1
H10
GND
B12
IO53_1
B5
IO85_1
J14
IO23_0
G8
VCCINT
A4
IO86_1
J12
IO24_0
A11
IO54_1
B4
IO87_1
J13
IO25_0
B11
IO55_1
E2
IO88/CLK0_1
G16
IO26_0
C11
IO56_1
E1
IO89/CLK1_1
G15
IO27_0
F10
IO57_1
C4
VCCIO_1
F13
IO28_0
F9
IO58_1
A1
VCCIO_1
F16
IO29_0
F11
IO59_1
M2
IO90/CLK2_1
G7
VCCINT
B2
GND
M1
IO91/CLK3/FUSE_CLK_1
F15
IO30_0
B15
GND
D5
IO92_1
http://www.capital-micro.com
73
CME-M5 Family Data Sheet
No.
BGA256
No.
BGA256
No.
BGA256
D6
IO93_1
G13
GND
M6
IO144_3
A3
IO94_1
J6
IO116_2
P6
IO145_3
B3
IO95_1
K6
IO117_2
M7
IO146_3
C3
IO96_1
L6
IO118_2
K8
IO147_3
D3
IO97_1
K2
IO119_2
R5
IO148_3
M5
VDDQ_1
K1
IO120_2
T5
IO149_3
G9
VCCINT
L2
IO121_2
R6
IO150_3
D7
GND
L1
IO122_2
N7
GND
D10
GND
H6
VCCINT
N10
GND
H15
XIN_1
L3
IO123_2
T6
IO151_3
H16
XOUT_1
N2
IO124_2
L7
IO152_3
D13
VDDA0_2
N1
IO125_2
R7
IO153_3
H5
nCONFIG_2
K4
GND
T7
IO154_3
J5
TMS_2
K13
GND
L8
IO155_3
H4
TDI_2
K5
IO126_2
M8
IO156_3
H3
TCK_2
L4
IO127_2
N8
IO157_3
J4
TDO_2
R1
IO128_2
P8
IO158_3
H14
/CONF_DONE_2
P2
IO129_2
R8
IO159_3
G12
IO99/MSEL_2
P1
IO130_2
T8
IO160_3
D4
IO100_2
M3
VCCIO_2
R9
IO161_3
C1
IO101_2
N3
IO131_2
P7
VCCIO_3
E5
IO102_2
P3
IO132_2
P10
VCCIO_3
E3
VCCIO_2
R3
IO133_2
T9
IO162_3
F5
IO103_2
J3
RTCXI_3
K9
IO163_3
B1
IO104_2
N4
RTCXO_3
L9
IO164_3
H1
IO105_2
L5
VCCRTC_3
M9
IO165_3
C2
IO106_2
F4
GNDRTC_3
N9
IO166_3
E4
GND
M4
GND
R10
IO167_3
E13
GND
M13
GND
T10
IO168_3
G10
VCCINT
H11
VCCINT
R11
IO169_3
F3
IO107_2
T3
IO134_3
T11
IO170_3
D1
IO108_2
T2
IO135_3
P5
GND
G5
IO109_2
R4
IO136_3
P12
GND
F2
IO110_2
T4
IO137_3
R2
GND
F1
IO111_2
N5
IO138_3
R12
IO171_3
G2
IO112_2
E15
IO139/CLK4_3
T12
IO172_3
G1
IO113_2
E16
IO140/CLK5_3
K10
IO173_3
J2
IO114_2
T1
VCCIO_3
L10
IO174_3
J1
IO115_2
P4
VCCIO_3
P9
IO175_3
G3
VCCIO_2
M15
IO141/CLK6_3
K7
VCCINT
K3
VCCIO_2
M16
IO142/CLK7_3
P11
IO176_3
G4
GND
N6
IO143_3
R13
IO177_3
http://www.capital-micro.com
74
CME-M5 Family Data Sheet
No.
BGA256
No.
BGA256
No.
BGA256
T13
IO178_3
P13
VCCIO_3
L11
IO185_3
M10
IO179_3
T16
VCCIO_3
M11
IO186_3
N11
IO180_3
R15
GND
N12
IO187_3
T14
IO181_3
R14
IO183_3
T15
IO182_3
P14
IO184_3
Table 52 FBGA256 Footprint
1
2
3
4
5
IO86_1
IO83_1
6
7
8
9
IO68_1
IO66_1
10
11
12
13
14
15
IO52_1
IO46_1
IO48_1
IO60_1
VCCIO_
A
16
VCCIO_
IO84_1 IO94_1
IO79_1 IO74_1
IO61_1 IO54_1
1
A
1
IO104_
B
GND
IO95_1
IO87_1
IO85_1
IO80_1 IO75_1
IO69_1
IO67_1
IO70_1
IO63_1
IO62_1 IO55_1
IO53_1
IO47_1
IO49_1
GND
IO31_0
B
IO42_1
IO37_0 IO36_0
C
IO43_1
IO34_0 IO33_0
D
2
IO101/
IO106_
C
VCCIO_
IO96_1
SDO_2
2
IO108_
IO8/nC
D
S_0
IO89/
IO88/
1
IO93_1
GND
VCCIO_
1
IO71_1
IO64_1
GND
IO44_1
IO45_1
IO102_
2
VCCIO_ IO139/
IO82_1 IO81_1
IO72_1
IO65_1
IO51_1 IO50_1
IO38_0
IO140/
GND
2
E
0
CLK4_3 CLK5_3
IO32_0
IO30_0 IO29_0
F
IO27_0 IO26_0
G
IO110_ IO107_ GNDRT IO103_
2
2
C_3
IO112_ VCCIO_
G
2
IO73_1
IO58_1
IO57_1 IO59_1
IO109_
2
IO39_1
IO28_0
2
GND
2
1
LL _2
IO76_1 IO77_1
IO113_
GND
2
F
2
VCCIO_
IO56_1
VCCAP
IO92_1
GND
IO111_
VCCIO_
IO100_
E
CLK1_1 CLK0_1
IO78_1
1
IO97_1
2
VCCIO_
GND
IO99/M
VCCINT VCCINT VCCINT VCCINT VCCINT IO35_0
2
VCCIO_
GND
SEL_2
0
CONF_
IO105/S IO13/S
H
nCONFI
TCK_2
CLK_2
TDI_2
DI_0
XOUT_
VCCINT
GND
GND
GND
GND
VCCINT IO40_1
IO41_1 DONE_
XIN_1
G_2
H
1
2
IO115_
IO114_ RTCXI_
J
IO116_
TDO_2
2
IO120_
2
TMS_2
3
IO119_ VCCIO_
K
GND
IO126_
IO117_
GND
2
IO122_
2
2
IO121_ IO123_
GND
GND
GND
IO147_
IO163_
IO173_
IO18_0
IO24_0
IO25_0
IO10_0
IO4_0
GND
VCCINT
2
2
IO90/
VCCIO_
IO22_0 IO21_0
J
2
2
IO127_ VCCRT IO118_ IO152_
3
3
IO20_0 IO19_0
K
IO155_
IO164_
3
3
IO17_0 IO16_0
L
IO156_
IO165_
3
3
IO157_
IO166_
VCCIO_
3
0
IO174_ IO185_
L
2
IO23_0
2
2
C_3
2
3
3
IO3_0
IO15_0
IO2_0
GND
IO14_0
3
IO91/CL
K3/FUS
M
VDDQ_ IO144_ IO146_
IO179_ IO186_
GND
E_CLK_ CLK2_1
2
1
3
3
3
VCCIO_ IO141/
3
IO142/
M
0
CLK6_3 CLK7_3
IO5_0
IO12_0 IO11_0
N
IO6_0
IO7_0
P
GND
IO9_0
R
1
IO125_
IO124_ IO131_ RTCXO IO138_
IO143_
N
GND
2
IO130_
2
2
_3
3
IO129_ IO132_ VCCIO_
P
3
IO180_
IO187_
3
3
GND
3
IO145_ VCCIO_ IO158_
3
IO1_0
IO175_ VCCIO_ IO176_
GND
2
2
IO128_
R
2
3
IO133_
IO136_
IO148_
2
3
3
VCCIO_ IO184_
GND
3
3
IO150_ IO153_
3
3
IO159_
IO161_
3
3
3
3
IO167_ IO169_
3
3
IO171_
IO177_
IO183_
3
3
3
GND
2
3
3
3
http://www.capital-micro.com
3
75
CME-M5 Family Data Sheet
VCCIO_ IO135_ IO134_
IO137_
IO149_
IO151_ IO154_
IO160_
IO162_
IO168_ IO170_
IO172_
IO178_
IO181_
IO182_ VCCIO_
T
T
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
7.2.4
VCCINT
VCCIO_2
IOXXX_0
VCCIO_0
VCCIO_3
IOXXX_1
VCCIO_1
GND
IOXXX_2
IOXXX_3
QFN68 Package Pin List
Table 53 QFN68 Package Pin List
No.
QFN68
No.
QFN68
No.
QFN68
1
VCCIO_0
25
IO20_0/CLK1_1
49
IO31_2
2
IO1_0
26
VCCIO_1
50
IO32_2
3
IO2_0
27
IO21/CLK2_1
51
IO33_2
4
IO3_0
28
IO22/CLK3/FUSE_CLK_1
52
IO34_3
5
IO4_0
29
IO23_1
53
IO35/CLK4_3
6
IO5_0
30
IO24_1
54
IO36/CLK5_3
7
VCCINT_0
31
IO25_1
55
VCCIO_3
8
IO6 _0
32
VDDQ_1
56
IO37/CLK6_3
9
IO7_0
33
XIN_1
57
IO38/CLK7_3
10
IO8_0
34
XOUT_1
58
IO39_3
11
IO9_0
35
VDDA_2
59
IO40_3
12
IO10_0
36
nCONFIG_2
60
IO41_3
13
IO11_0
37
TMS_2
61
IO42_3
14
VCCIO_0
38
TDI_2
62
IO43_3
15
IO12_0
39
TCK_2
63
IO44_3
16
IO13_0
40
TDO_2
64
IO45_2
17
IO14_0
41
CONF_DONE_2
65
VCCIO_3
18
VCCINT_1
42
IO27_2
66
IO46_3
19
VCCIO_1
43
IO28_2
67
IO47_3
20
IO15_1
44
VCCIO_2
68
VCCINT_3
21
IO16_1
45
VCCIO_2
22
IO17_1
46
VCCINT_2
23
IO18_1
47
IO29_2
24
IO19_0/CLK0_1
48
IO30_2
Note: The exposed pad at the center of the chip backside should be connected to GND.
http://www.capital-micro.com
76
CME-M5 Family Data Sheet
7.3 Package Information
7.3.1
LQFP144 Low-profile Quad Flat-Pack Package Specifications
D 1
θ2
D1 2
PIN 1
IDENTI
FIER
θ1
4
14
4
R1
10
9
R2
10
8
1
B
GAGE PLANE
.25
E1
2
E
1
θ
B
S
L
…
A
36
73
37
L1
θ3
A
SECTION A-A
72
b
5
3
c
A
A2
A1
C
6
e
b
0.08
c1
5
SEATING PLANE
5
C
b1
5
WITH PLATING
SECTION B-B
BASE METAL
Symbol
Dimension in mm
Min Nom Max
A
A1
A2
b
b1
c
c1
D
D1
E
E1
e
L
L1
R
R1
S
θ
θ1
θ2
θ3
1.60
0.05
1.35 1.40 1.45
0.17 0.22 0.27
0.20 REF
0.12
0.20
0.13 REF
21.85 22.00 22.15
19.90 20.00 20.10
21.85 22.00 22.15
19.90 20.00 20.10
0.50 BSC
0.45 0.60 0.75
1.00 REF
0.15 REF
0.15 REF
0.19 REF
0° 3.5° 7°
7° REF
12° REF
12° REF
C
1
TO BE DETERMINED AT SEATING PLANE
2
DIMENSION D1 AND E1 DO NOT INCLUDE MOLD PROTRUSION
D1 AND E1 ARE MAXIMUM PLASTIC BODY SIZE DIMENSION
INCLUDING MOLD MISMATCH.
3
DIMENSION b DOES NOT INCLUDE DAMBAR PROTRUSION
DAMBAR CAN NOT BE LOCATED ON THE LOWER RADIUS
OR THE FOOT.
4
EXACT SHAPE OF EACH CORNER IS OPTIONAL.
5
THESE DIMENSIONS APPLY TO THE FLAT SECTION OF THE LEAD
BETWEEN 0.10 mm AND 0.25 mm FROM THE LEAD TIP.
6
A1 IS DEFINED AS THE DISTANCE FROM THE SEATING
PLANE
7
CONTROLLING DIMENSION : MILLIMETER.
TO THE LOWEST POINT OF THE PACKAGE BODY.
8
REFERENCE DOCUMENT : JEDEC MS–026 , BFB
Figure 39 LQFP144 package
http://www.capital-micro.com
77
CME-M5 Family Data Sheet
7.3.2
TQFP100 Thin Quad Flat-Pack Package Specifications
D 1
θ2 (4x)
D1 2
PIN 1
IDENTI
FIER
1
θ1
4
10
0
R1
76
R2
75
B
GAGE PLANE
.25
E1 E
2
1
θ
B
S
L
…
51
25
L1
θ3
(4x)
SECTION A-A
26
5
0
b 5
3
SEE DETAIL A-A
A A2
A16
e
b
c
SEATING PLANE
C
5
WITH PLATING
cccC
c1
5
b1 5
BASE METAL
SECTION B-B
Symbol
A
A1
A2
b
b1
c
c1
D
D1
E
E1
e
L
L1
R
R1
S
θ
θ1
θ2
θ3
ccc
Dimension in mm
Min Nom Max
1.20
0.05
0.15
0.95 1.00 1.05
0.17 0.22 0.27
0.17 0.20 0.23
0.09
0.20
0.09
16.00
14.00
16.00
14.00
0.16
BSC
BSC
BSC
BSC
0.50 BSC
0.45 0.60 0.75
0.15 REF
0.08
0.08
0.20
0.20
0°
3.5°
7°
0°
11° 12°
13°
11° 12°
13°
0.08
1
TO BE DETERMINED AT SEATING PLANE C
DIMENSION D1 AND E1 DO NOT INCLUDE MOLD PROTRUSION
D1 AND E1 ARE MAXIMUM PLASTIC BODY SIZE DIMENSION
2
INCLUDING MOLD MISMATCH.
DIMENSION b DOES NOT INCLUDE DAMBAR PROTRUSION
3
DAMBAR CAN NOT BE LOCATED ON THE LOWER RADIUS OR
THEFOOT.
4
EXACT SHAPE OF EACH CORNER IS OPTIONAL.
THESE DIMENSIONS APPLY TO THE FLAT SECTION OF THE LEAD
5
BETWEEN 0.10 mm AND 0.25 mm FROM THE LEAD TIP.
6
7
A1 IS DEFINED AS THE DISTANCE FROM THE SEATING PLANE
CONTROLLING DIMENSION : MILLIMETER.
TO THE LOWEST POINT OF THE PACKAGE BODY.
8
REFERENCE DOCUMENT : JEDEC MS–026 , BFB
9
SPECIAL CHARACTERISTICS C CLASS : ccc
Figure 40 TQFP100 package
http://www.capital-micro.com
78
CME-M5 Family Data Sheet
7.3.3
FBGA256-Pin FineLine Ball-Grid Array (FBGA) – THIN – Wire Bond
Figure 41 FBGA256 package


Controlling dimension is in millimeters.
Pin A1 may be indicated by an ID dot, or a special feature, in its proximity on package
surface.
http://www.capital-micro.com
79
CME-M5 Family Data Sheet
7.3.4
QFN68 Package Specifications
Figure 42 QFN68 package
http://www.capital-micro.com
80
CME-M5 Family Data Sheet
8 Developer Kits
Capital Microelectronics developer kits can achieve 2 designs for CME-M5 family: FPGA design and
embedded software design.
Capital Microelectronics Primace Integrated Design Environment (IDE) supports all CME’s chips, and
can implement synthesis, mapper, placement, routing, bitgen, simulation etc, and support 3rd-party EDA
tools: Modelsim as well.
AGDI is developed by Keil (Keil is a part of ARM), as a general purposed debugger interface to Keil-C
IDE, with which designers can compile and debug 8051 firmware online. The CME-M5 family device has
on-chip debug (OCDS) capability, which can help the user debug 8051 program easily. For more
information, please refer to CME 8051 Debugger User Manual.
If you want to program, compile, debug 8051, or perform other 8051 related operations, please purchase
Keil-C software tool. For more information, please refer to http://www.keil.com/c51 .
Currently, the CME-M5 family device does not support other 3rd-party development environment. If you
have any questions or suggestions, please contact us at: support@capital-micro.com .
OCDS debugging interface of MSS share the same JTAG interface with FPGA.
http://www.capital-micro.com
81
CME-M5 Family Data Sheet
9 Ordering Information
All part numbers have the following conventions:
Table 54 Part number conventions
Vendor
Product
Series
Device
Type
LUT
Density
CME-
M5
C
06
NVM
Density
Package
Type
Temperature
Range
Speed
Grade
N3
L144
C
7
Product Series
M5
JINSHAN family
Device Type
P
R
C
FPGA
FPGA + SRAM
FPGA + SRAM + MCU
LUT Density
06
03
01
6K LUTs
3K LUTs
1K LUTs
Configuration NVM (SPI-flash) Option
N0
Without internal SPI-flash
N1
With 1Mb internal SPI-flash
N2
With 2Mb internal SPI-flash
N3
With 4Mb internal SPI-flash
N4
With 8Mb internal SPI-flash
Package Type: <type><#>
T
L
Q
F
#
Thin Quad Flat Pack (TQFP)
Low profile quad flat package (LQFP)
Plastic Quad Flat Pack (QFN)
Fineline BGA
Pin number (208 for 208pin, 100 for 100pin…)
Temperature Range
C
I
Commercial (0℃ to 85℃)
Industrial (-40℃ to 125℃)
http://www.capital-micro.com
82
CME-M5 Family Data Sheet
Speed Grade
#
Speed (7 for speed 7, 6 for speed 6, …)
Example:
CME-M5C06N3L144C7
Device Type
NVM Density
N0:Without SPI-flash
N1: With 1Mb SPI-flash
N2: With 2Mb SPI-flash
N3: With 4Mb SPI-flash
N4: With 8Mb SPI-flash
P: FPGA
R: FPGA + SRAM
C: FPGA + SRAM + MCU
Vendor
CME
CME- M5
Product Series
C
LUT Density
M5: JINSHAN family 06:6K LUTs
03:3K LUTs
01:1K LUTs
06
N3
L144
C
7
Package Type
Speed Grade
T:TQFP
Temperature Range
7: speed 7
L:LQFP
6: speed 6
C: Commercial (0℃~85℃)
Q:QFN
I: Industrial (-40℃~+125℃)
F:BGA
http://www.capital-micro.com
83
CME-M5 Family Data Sheet
10 Legends
Abbreviation
Full Name
AES
Advanced Encryption Standard
ALU
Arithmetic-Logic Unit
AS
Active Serial
CAP
Configurable Application Platform on Chip
CCU
Compare Capture Unit
CMS
Control Mux Switch
CPU
Control Processor Unit
DPRAM
Dual Port RAM
DC
Direct Current
DSP
Digital Signal Processor
EMB
Embedded Memory Block
IAP
In Application Programming
I2C
Inter-IC – a serial interface designed by Philips Semiconductors
ISC
In System Configuration
ISP
In System Programming
ISR
Interrupt Service Routine Unit
LE
Logic Element
LP
Logic Parcel
LSB
Least Significant Bit
MAC
Multiply Accumulate Counter
MDU
Multiplication-Division Unit
MOVC
Move Program Memory
MOVX
Move External Memory
MSB
Most Significant Bit
MSS
Microcontroller Subsystem
OCDS
On-Chip Debug Support
OCI
On-Chip Instrumentations
PLB
Programmable Logic Block
PMU
Power Management Unit
PS
Passive Serial
RTC
Real Time Clock
SFR
Special Function Register
SPI
Serial Peripheral Interface
http://www.capital-micro.com
84