??? ???? ????
Login |
  • Why Register?
  • Download development tools
  • Create and track support tickets
  • Subscribe to resource updates
  • Access latest developer news
Register

XS1-G04B-FB512 Datasheet

Development Tools:

XS1-G04B-FB512 Datasheet
Document Number: 1066D
Publication Date: 2011/05/16
Copyright © 2010 XMOS Limited, All Rights Reserved.

XS1-G04B-FB512 Datasheet
1
Table of Contents
1
Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
2
Pin Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
3
Signal Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
4
Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
5
Product Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
6
DC and Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
7
Package Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
8
Ordering Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
9
Development Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
10
Addendum: XMOS USB Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
11
Associated Design Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
12
Related Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
13
Revision History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
TO OUR VALUED CUSTOMERS
It is our intention to provide you with accurate and comprehensive documentation for the hardware and
software components used in this product. To subscribe to receive updates, visit http://www.xmos.com/.
XMOS Ltd. is the owner or licensee of the information in this document and is providing it to you "AS IS" with
no warranty of any kind, express or implied and shall have no liability in relation to its use. XMOS Ltd. makes
no representation that the information, or any particular implementation thereof, is or will be free from any
claims of infringement and again, shall have no liability in relation to any such claims.
XMOS and the XMOS logo are registered trademarks of XMOS Ltd in the United Kingdom and other countries,
and may not be used without written permission. Company and product names mentioned in this document
are the trademarks or registered trademarks of their respective owners.
Document Number: 1066D

XS1-G04B-FB512 Datasheet
2
1
Features
· Quad-Core Device with Advanced Multi-Threaded RISC Architecture
· Up to 1600 MIPS shared between up to 32 real-time threads
· Each thread has:
-- Guaranteed throughput of between 1/4 and 1/8 of core MIPS
-- 16x32bit dedicated registers
· 159 high-density 16/32-bit instructions
-- All have single clock-cycle execution (except for divide)
-- High-performance DSP (32x3264-bit MAC) and cryptographic instructions
· Programmable I/O
· 256 general-purpose I/O pins, configurable as input, output or bi-directional ports
· Port sampling rates of up to 60 MHz with respect to an external clock
· 128 channel ends for communication with other threads, on or off-chip
· Non-Volatile Memory
· 256KB internal single-cycle SRAM (max 64KB per core) for code and data storage
· 32KB internal OTP (max 8KB per core) for application boot code
· JTAG Module for On-Chip Debug
· Security Features
· Programming lock disables debug and prevents read-back of memory contents
· AES bootloader ensures secrecy of IP held on external flash memory
· Ambient Temperature Range
· Commercial qualification: 0 °C to 70 °C
· Industrial qualification: -40 °C to 85 °C
· Speed Grade
· 400 MHz part: 400 MIPS
· 512-pin PBGA package 0.8 mm pitch
Document Number: 1066D

XS1-G04B-FB512 Datasheet
3
2
Pin Configuration
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
A
IO VDD
IO VDD
X0D61
X0D63
X0D65
VSS
X0D67
X0D69
NC
IO VDD
NC
NC
NC
NC
VSS
NC
X3D69
X3D67
IO VDD
X3D65
X3D63
X3D61
VSS
VSS
B
IO VDD
IO VDD
NC
X0D62
X0D64
VSS
X0D66
X0D68
X0D70
IO VDD
NC
NC
NC
NC
VSS
X3D70
X3D68
X3D66
IO VDD
X3D64
X3D62
NC
VSS
VSS
C
NC
X0D58
IO VDD
X0D37
X0D39
X0D41
VSS
X0D43
NC
NC
IO VDD
NC
NC
VSS
NC
NC
X3D43
IO VDD
X3D41
X3D39
X3D37
VSS
X3D58
NC
D
X0D57
X0D56
X0D35
IO VDD
X0D36
X0D38
X0D40
VSS
X0D42
NC
NC
NC
NC
NC
NC
X3D42
IO VDD
X3D40
X3D38
X3D36
VSS
X3D35
X3D56
X3D57
E
X0D55
X0D54
X0D33
X0D34
IO VDD
X0D13
X0D15
X0D17
VSS
X0D19
X0D21
X0D23
X3D23
X3D21
X3D19
IO VDD
X3D17
X3D15
X3D13
VSS
X3D34
X3D33
X3D54
X3D55
F
VSS
VSS
X0D31
X0D32
X0D11
IO VDD
X0D12
X0D14
X0D16
X0D18
X0D20
X0D22
X3D22
X3D20
X3D18
X3D16
X3D14
X3D12
VSS
X3D11
X3D32
X3D31
IO VDD
IO VDD
SS_
SS_PLL_
SS_
SS_OTP_
SS_OTP_
G
X0D53
X0D52
VSS
X0D30
X0D09
X0D10
IO VDD
BYPASS_
VDD
VDD
VDD
VDD
VDD
VSS
X3D10
X3D09
X3D30
IO VDD
X3D52
X3D53
BYPASS
PLL_
RESET
VREF
PWR_UP
LOCK
SS_XC0_
H
X0D51
X0D50
X0D29
VSS
X0D07
X0D08
SS_CLK
X3D08
X3D07
IO VDD
BS[0]
X3D29
X3D50
X3D51
SS_XC0_
J
X0D49
NC
SS_PLL_
X0D27
X0D28
VSS
X0D06
X3D06
IO VDD
X3D28
X3D27
NC
X3D49
LOCK
BS[1]
K
IO VDD
IO VDD
X0D25
X0D26
X0D05
X0D04
VDD
VSS
VSS
VSS
VSS
VSS
VSS
VDD
X3D04
X3D05
X3D26
X3D25
VSS
VSS
SS_XC_
SS_XC1_
L
NC
NC
IO VDD
X0D24
X0D03
X0D02
VDD
VSS
VSS
VSS
VSS
VSS
VSS
VDD
X3D02
X3D03
X3D24
NC
CFG[0]
BS[0]
SS_EXT_
SS_XC_
SS_XC1_
M
NC
NC
NC
NC
SS_
X0D01
X0D00
OSC_
VSS
VSS
VSS
VSS
VSS
VSS
X3D00
X3D01
NC
NC
DEBUG
CFG[1]
BS[1]
CONFIG
SS_EXT_
SS_XC0_ SS_XC1_
N
NC
NC
NC
NC
OSC_
SS_
X1D01
X1D00
VSS
VSS
VSS
VSS
VSS
VSS
X2D00
X2D01
NC
NC
HS_
RESERVED
BS[2]
BS[2]
MODE
SS_XC0_ SS_XC1_
P
NC
NC
VSS
X1D24
X1D03
X1D02
VDD
VSS
VSS
VSS
VSS
VSS
VSS
VDD
X2D02
X2D03
X2D24
NC
BS[3]
BS[3]
R
VSS
VSS
X1D25
X1D26
X1D05
X1D04
VDD
VSS
VSS
VSS
VSS
VSS
VSS
VDD
X2D04
X2D05
X2D26
X2D25
IO VDD
IO VDD
SS_
T
X1D49
NC
X1D27
X1D28
IO VDD
SS_PLL_
X1D06
TEST_
X2D06
VSS
X2D28
X2D27
NC
X2D49
TEST
ENA
U
X1D51
X1D50
X1D29
IO VDD
SS_PLL_
X1D07
X1D08
SS_TCK
X2D08
X2D07
VSS
X2D29
X2D50
X2D51
AGND
V
X1D53
X1D52
IO VDD
SS_PLL_ SS_OTP_
X1D30
X1D09
X1D10
VSS
VDD
VDD
SS_TMS
SS_TDO
VDD
VDD
SS_TDI
SS_TRST IO VDD
X2D10
X2D09
X2D30
VSS
X2D52
X2D53
AVDD
VPP
W
IO VDD
IO VDD
X1D31
X1D32
X1D11
VSS
X1D12
X1D14
X1D16
X1D18
X1D20
X1D22
X2D22
X2D20
X2D18
X2D16
X2D14
X2D12
IO VDD
X2D11
X2D32
X2D31
VSS
VSS
Y
X1D55
X1D54
X1D33
X1D34
VSS
X1D13
X1D15
X1D17
IO VDD
X1D19
X1D21
X1D23
X2D23
X2D21
X2D19
VSS
X2D17
X2D15
X2D13
IO VDD
X2D34
X2D33
X2D54
X2D55
AA
X1D57
X1D56
X1D35
VSS
X1D36
X1D38
X1D40
IO VDD
X1D42
NC
NC
NC
NC
NC
NC
X2D42
VSS
X2D40
X2D38
X2D36
IO VDD
X2D35
X2D56
X2D57
AB
NC
X1D58
VSS
X1D37
X1D39
X1D41
IO VDD
X1D43
NC
NC
VSS
NC
NC
IO VDD
NC
NC
X2D43
VSS
X2D41
X2D39
X2D37
IO VDD
X2D58
NC
AC
VSS
VSS
NC
X1D62
X1D64
IO VDD
X1D66
X1D68
X1D70
VSS
NC
NC
NC
NC
IO VDD
X2D70
X2D68
X2D66
VSS
X2D64
X2D62
NC
IO VDD
IO VDD
AD
VSS
VSS
X1D61
X1D63
X1D65
IO VDD
X1D67
X1D69
NC
VSS
NC
NC
NC
NC
IO VDD
NC
X2D69
X2D67
VSS
X2D65
X2D63
X2D61
IO VDD
IO VDD
Document Number: 1066D

XS1-G04B-FB512 Datasheet
4
3
Signal Description
Module
Signal
Function
Type
Active
Properties
PU=Pull Up, PD=Pull Down, ST=Schmitt Trigger, OT=Output Tristate, S=Switchable
RS=Required for SPI boot (§5.8), RU=Required for USB-enabled devices (§10)
VSS
Digital ground
GND
--
VDD
Digital core power
PWR
--
IO VDD
Digital I/O power
PWR
--
Power
SS_PLL_AGND
Analog ground for PLL
GND
--
SS_PLL_AVDD
Analog PLL power
PWR
--
SS_OTP_VPP
OTP programming voltage
PWR
--
SS_RESET
Global reset input
Input
--
SS_CLK
PLL reference clock
Input
--
PD, ST
SS_PLL_BYPASS
PLL bypass
Input
--
PD
SS_EXT_OSC_CONFIG
Oscillator config
Input
--
PD
PLL
SS_EXT_OSC_HS_MODE
Oscillator high-speed mode
Input
--
PD
SS_XC0_BS[3:0]
Boot status (core 0)
I/O
--
PU
SS_XC1_BS[3:0]
Boot status (core 1)
I/O
--
PU
SS_TDI
Test data input
Input
--
PU, ST
SS_TDO
Test data output
Output
--
PD
SS_TMS
Test mode select
Input
--
PU, ST
JTAG
SS_TRST
Test reset input
Input
--
PU, ST
SS_TCK
Test clock
Input
--
PU, ST
SS_DEBUG
Multi-chip debug
I/O
--
PU
X0D00
P1A0
I/O
--
PDS, RS
X0D01
X0LA4i
5b
P1B0
I/O
--
PDS, RS
X0D02
X0LA3i
5b
P4A0 P8A0 P16A0 P32A20
I/O
--
PDS, RU
X0D03
X0LA2i
5b
P4A1 P8A1 P16A1 P32A21
I/O
--
PDS, RU
X0D04
X0LA1i
2b/5b
P4B0 P8A2 P16A2 P32A22
I/O
--
PDS, RU
X0D05
X0LA0i
2b/5b
P4B1 P8A3 P16A3 P32A23
I/O
--
PDS, RU
X0D06
X0LA0o
2b/5b
P4B2 P8A4 P16A4 P32A24
I/O
--
PDS, RU
X0D07
X0LA1o
2b/5b
P4B3 P8A5 P16A5 P32A25
I/O
--
PDS, RU
X0D08
X0LA2o
5b
P4A2 P8A6 P16A6 P32A26
I/O
--
PDS, RU
XCore 0 I/O
X0D09
X0LA3o
5b
P4A3 P8A7 P16A7 P32A27
I/O
--
PDS, RU
X0D10
X0LA4o
5b
P1C0
I/O
--
PDS, RS
X0D11
P1D0
I/O
--
PDS, RS
X0D12
P1E0
I/O
--
PDS, RU
X0D13
X0LB4i
5b
P1F0
I/O
--
PDS, RU
X0D14
X0LB3i
5b
P4C0 P8B0 P16A8 P32A28
I/O
--
PDS, RU
X0D15
X0LB2i
5b
P4C1 P8B1 P16A9 P32A29
I/O
--
PDS, RU
X0D16
X0LB1i
2b/5b
P4D0 P8B2 P16A10
I/O
--
PDS, RU
X0D17
X0LB0i
2b/5b
P4D1 P8B3 P16A11
I/O
--
PDS, RU
X0D18
X0LB0o
2b/5b
P4D2 P8B4 P16A12
I/O
--
PDS, RU
(continued)
Document Number: 1066D

XS1-G04B-FB512 Datasheet
5
Module
Name
Function
Type
Active
Properties
X0D19
X0LB1o
2b/5b
P4D3 P8B5 P16A13
I/O
--
PDS, RU
X0D20
X0LB2o
5b
P4C2 P8B6 P16A14 P32A30
I/O
--
PDS, RU
X0D21
X0LB3o
5b
P4C3 P8B7 P16A15 P32A31
I/O
--
PDS, RU
X0D22
X0LB4o
5b
P1G0
I/O
--
PDS, RU
X0D23
P1H0
I/O
--
PDS, RU
X0D24
P1I0
I/O
--
PDS
X0D25
P1J0
I/O
--
PDS
X0D26
P4E0 P8C0 P16B0
I/O
--
PDS, RU
X0D27
P4E1 P8C1 P16B1
I/O
--
PDS, RU
X0D28
P4F0 P8C2 P16B2
I/O
--
PDS, RU
X0D29
P4F1 P8C3 P16B3
I/O
--
PDS, RU
X0D30
P4F2 P8C4 P16B4
I/O
--
PDS, RU
X0D31
P4F3 P8C5 P16B5
I/O
--
PDS, RU
X0D32
P4E2 P8C6 P16B6
I/O
--
PDS, RU
X0D33
P4E3 P8C7 P16B7
I/O
--
PDS, RU
X0D34
P1K0
I/O
--
PDS
X0D35
P1L0
I/O
--
PDS
X0D36
P1M0
P8D0 P16B8
I/O
--
PDS
X0D37
P1N0
P8D1 P16B9
I/O
--
PDS, RU
X0D38
P1O0
P8D2 P16B10
I/O
--
PDS, RU
X0D39
P1P0
P8D3 P16B11
I/O
--
PDS, RU
XCore 0 I/O
X0D40
P8D4 P16B12
I/O
--
PDS, RU
X0D41
P8D5 P16B13
I/O
--
PDS, RU
X0D42
P8D6 P16B14
I/O
--
PDS, RU
X0D43
P8D7 P16B15
I/O
--
PUS, RU
X0D49
X0LC4i
5b
P32A0
I/O
--
PDS
X0D50
X0LC3i
5b
P32A1
I/O
--
PDS
X0D51
X0LC2i
5b
P32A2
I/O
--
PDS
X0D52
X0LC1i
2b/5b
P32A3
I/O
--
PDS
X0D53
X0LC0i
2b/5b
P32A4
I/O
--
PDS
X0D54
X0LC0o
2b/5b
P32A5
I/O
--
PDS
X0D55
X0LC1o
2b/5b
P32A6
I/O
--
PDS
X0D56
X0LC2o
5b
P32A7
I/O
--
PDS
X0D57
X0LC3o
5b
P32A8
I/O
--
PDS
X0D58
X0LC4o
5b
P32A9
I/O
--
PDS
X0D61
X0LD4i
5b
P32A10
I/O
--
PDS
X0D62
X0LD3i
5b
P32A11
I/O
--
PDS
X0D63
X0LD2i
5b
P32A12
I/O
--
PDS
X0D64
X0LD1i
2b/5b
P32A13
I/O
--
PDS
X0D65
X0LD0i
2b/5b
P32A14
I/O
--
PDS
X0D66
X0LD0o
2b/5b
P32A15
I/O
--
PDS
X0D67
X0LD1o
2b/5b
P32A16
I/O
--
PDS
X0D68
X0LD2o
5b
P32A17
I/O
--
PDS
(continued)
Document Number: 1066D

XS1-G04B-FB512 Datasheet
6
Module
Name
Function
Type
Active
Properties
X0D69
X0LD3o
XCore 0 I/O
5b
P32A18
I/O
--
PDS
X0D70
X0LD4o
5b
P32A19
I/O
--
PDS
X1D00
P1A0
I/O
--
PDS
X1D01
X1LA4o
5b
P1B0
I/O
--
PDS
X1D02
X1LA3o
5b
P4A0 P8A0 P16A0 P32A20
I/O
--
PDS, RU
X1D03
X1LA2o
5b
P4A1 P8A1 P16A1 P32A21
I/O
--
PDS, RU
X1D04
X1LA1o
2b/5b
P4B0 P8A2 P16A2 P32A22
I/O
--
PDS, RU
X1D05
X1LA0o
2b/5b
P4B1 P8A3 P16A3 P32A23
I/O
--
PDS, RU
X1D06
X1LA0i
2b/5b
P4B2 P8A4 P16A4 P32A24
I/O
--
PDS, RU
X1D07
X1LA1i
2b/5b
P4B3 P8A5 P16A5 P32A25
I/O
--
PDS, RU
X1D08
X1LA2i
5b
P4A2 P8A6 P16A6 P32A26
I/O
--
PDS, RU
X1D09
X1LA3i
5b
P4A3 P8A7 P16A7 P32A27
I/O
--
PDS, RU
X1D10
X1LA4i
5b
P1C0
I/O
--
PDS
X1D11
P1D0
I/O
--
PDS
X1D12
P1E0
I/O
--
PDS, RU
X1D13
X1LB4o
5b
P1F0
I/O
--
PDS, RU
X1D14
X1LB3o
5b
P4C0 P8B0 P16A8 P32A28
I/O
--
PDS, RU
X1D15
X1LB2o
5b
P4C1 P8B1 P16A9 P32A29
I/O
--
PDS, RU
X1D16
X1LB1o
2b/5b
P4D0 P8B2 P16A10
I/O
--
PDS, RU
X1D17
X1LB0o
2b/5b
P4D1 P8B3 P16A11
I/O
--
PDS, RU
X1D18
X1LB0i
2b/5b
P4D2 P8B4 P16A12
I/O
--
PDS, RU
X1D19
X1LB1i
2b/5b
P4D3 P8B5 P16A13
I/O
--
PDS, RU
XCore 1 I/O
X1D20
X1LB2i
5b
P4C2 P8B6 P16A14 P32A30
I/O
--
PDS, RU
X1D21
X1LB3i
5b
P4C3 P8B7 P16A15 P32A31
I/O
--
PDS, RU
X1D22
X1LB4i
5b
P1G0
I/O
--
PDS, RU
X1D23
P1H0
I/O
--
PDS, RU
X1D24
P1I0
I/O
--
PDS
X1D25
P1J0
I/O
--
PDS
X1D26
P4E0 P8C0 P16B0
I/O
--
PDS, RU
X1D27
P4E1 P8C1 P16B1
I/O
--
PDS, RU
X1D28
P4F0 P8C2 P16B2
I/O
--
PDS, RU
X1D29
P4F1 P8C3 P16B3
I/O
--
PDS, RU
X1D30
P4F2 P8C4 P16B4
I/O
--
PDS, RU
X1D31
P4F3 P8C5 P16B5
I/O
--
PDS, RU
X1D32
P4E2 P8C6 P16B6
I/O
--
PDS, RU
X1D33
P4E3 P8C7 P16B7
I/O
--
PDS, RU
X1D34
P1K0
I/O
--
PDS, RU
X1D35
P1L0
I/O
--
PDS, RU
X1D36
P1M0
P8D0 P16B8
I/O
--
PDS, RU
X1D37
P1N0
P8D1 P16B9
I/O
--
PDS, RU
X1D38
P1O0
P8D2 P16B10
I/O
--
PDS, RU
X1D39
P1P0
P8D3 P16B11
I/O
--
PDS, RU
X1D40
P8D4 P16B12
I/O
--
PDS, RU
(continued)
Document Number: 1066D

XS1-G04B-FB512 Datasheet
7
Module
Name
Function
Type
Active
Properties
X1D41
P8D5 P16B13
I/O
--
PDS, RU
X1D42
P8D6 P16B14
I/O
--
PDS, RU
X1D43
P8D7 P16B15
I/O
--
PUS, RU
X1D49
X1LC4o
5b
P32A0
I/O
--
PDS
X1D50
X1LC3o
5b
P32A1
I/O
--
PDS
X1D51
X1LC2o
5b
P32A2
I/O
--
PDS
X1D52
X1LC1o
2b/5b
P32A3
I/O
--
PDS
X1D53
X1LC0o
2b/5b
P32A4
I/O
--
PDS
X1D54
X1LC0i
2b/5b
P32A5
I/O
--
PDS
X1D55
X1LC1i
2b/5b
P32A6
I/O
--
PDS
X1D56
X1LC2i
5b
P32A7
I/O
--
PDS
XCore 1 I/O
X1D57
X1LC3i
5b
P32A8
I/O
--
PDS
X1D58
X1LC4i
5b
P32A9
I/O
--
PDS
X1D61
X1LD4o
5b
P32A10
I/O
--
PDS
X1D62
X1LD3o
5b
P32A11
I/O
--
PDS
X1D63
X1LD2o
5b
P32A12
I/O
--
PDS
X1D64
X1LD1o
2b/5b
P32A13
I/O
--
PDS
X1D65
X1LD0o
2b/5b
P32A14
I/O
--
PDS
X1D66
X1LD0i
2b/5b
P32A15
I/O
--
PDS
X1D67
X1LD1i
2b/5b
P32A16
I/O
--
PDS
X1D68
X1LD2i
5b
P32A17
I/O
--
PDS
X1D69
X1LD3i
5b
P32A18
I/O
--
PDS
X1D70
X1LD4i
5b
P32A19
I/O
--
PDS
X2D00
P1A0
I/O
--
PDS
X2D01
X2LA4i
5b
P1B0
I/O
--
PDS
X2D02
X2LA3i
5b
P4A0 P8A0 P16A0 P32A20
I/O
--
PDS, RU
X2D03
X2LA2i
5b
P4A1 P8A1 P16A1 P32A21
I/O
--
PDS, RU
X2D04
X2LA1i
2b/5b
P4B0 P8A2 P16A2 P32A22
I/O
--
PDS, RU
X2D05
X2LA0i
2b/5b
P4B1 P8A3 P16A3 P32A23
I/O
--
PDS, RU
X2D06
X2LA0o
2b/5b
P4B2 P8A4 P16A4 P32A24
I/O
--
PDS, RU
X2D07
X2LA1o
2b/5b
P4B3 P8A5 P16A5 P32A25
I/O
--
PDS, RU
X2D08
X2LA2o
5b
P4A2 P8A6 P16A6 P32A26
I/O
--
PDS, RU
X2D09
X2LA3o
XCore 2 I/O
5b
P4A3 P8A7 P16A7 P32A27
I/O
--
PDS, RU
X2D10
X2LA4o
5b
P1C0
I/O
--
PDS
X2D11
P1D0
I/O
--
PDS
X2D12
P1E0
I/O
--
PDS, RU
X2D13
X2LB4i
5b
P1F0
I/O
--
PDS, RU
X2D14
X2LB3i
5b
P4C0 P8B0 P16A8 P32A28
I/O
--
PDS, RU
X2D15
X2LB2i
5b
P4C1 P8B1 P16A9 P32A29
I/O
--
PDS, RU
X2D16
X2LB1i
2b/5b
P4D0 P8B2 P16A10
I/O
--
PDS, RU
X2D17
X2LB0i
2b/5b
P4D1 P8B3 P16A11
I/O
--
PDS, RU
X2D18
X2LB0o
2b/5b
P4D2 P8B4 P16A12
I/O
--
PDS, RU
X2D19
X2LB1o
2b/5b
P4D3 P8B5 P16A13
I/O
--
PDS, RU
(continued)
Document Number: 1066D

XS1-G04B-FB512 Datasheet
8
Module
Name
Function
Type
Active
Properties
X2D20
X2LB2o
5b
P4C2 P8B6 P16A14 P32A30
I/O
--
PDS, RU
X2D21
X2LB3o
5b
P4C3 P8B7 P16A15 P32A31
I/O
--
PDS, RU
X2D22
X2LB4o
5b
P1G0
I/O
--
PDS, RU
X2D23
P1H0
I/O
--
PDS, RU
X2D24
P1I0
I/O
--
PDS
X2D25
P1J0
I/O
--
PDS
X2D26
P4E0 P8C0 P16B0
I/O
--
PDS, RU
X2D27
P4E1 P8C1 P16B1
I/O
--
PDS, RU
X2D28
P4F0 P8C2 P16B2
I/O
--
PDS, RU
X2D29
P4F1 P8C3 P16B3
I/O
--
PDS, RU
X2D30
P4F2 P8C4 P16B4
I/O
--
PDS, RU
X2D31
P4F3 P8C5 P16B5
I/O
--
PDS, RU
X2D32
P4E2 P8C6 P16B6
I/O
--
PDS, RU
X2D33
P4E3 P8C7 P16B7
I/O
--
PDS, RU
X2D34
P1K0
I/O
--
PDS
X2D35
P1L0
I/O
--
PDS
X2D36
P1M0
P8D0 P16B8
I/O
--
PDS
X2D37
P1N0
P8D1 P16B9
I/O
--
PDS, RU
X2D38
P1O0
P8D2 P16B10
I/O
--
PDS, RU
X2D39
P1P0
P8D3 P16B11
I/O
--
PDS, RU
X2D40
P8D4 P16B12
I/O
--
PDS, RU
XCore 2 I/O
X2D41
P8D5 P16B13
I/O
--
PDS, RU
X2D42
P8D6 P16B14
I/O
--
PDS, RU
X2D43
P8D7 P16B15
I/O
--
PUS, RU
X2D49
X2LC4i
5b
P32A0
I/O
--
PDS
X2D50
X2LC3i
5b
P32A1
I/O
--
PDS
X2D51
X2LC2i
5b
P32A2
I/O
--
PDS
X2D52
X2LC1i
2b/5b
P32A3
I/O
--
PDS
X2D53
X2LC0i
2b/5b
P32A4
I/O
--
PDS
X2D54
X2LC0o
2b/5b
P32A5
I/O
--
PDS
X2D55
X2LC1o
2b/5b
P32A6
I/O
--
PDS
X2D56
X2LC2o
5b
P32A7
I/O
--
PDS
X2D57
X2LC3o
5b
P32A8
I/O
--
PDS
X2D58
X2LC4o
5b
P32A9
I/O
--
PDS
X2D61
X2LD4i
5b
P32A10
I/O
--
PDS
X2D62
X2LD3i
5b
P32A11
I/O
--
PDS
X2D63
X2LD2i
5b
P32A12
I/O
--
PDS
X2D64
X2LD1i
2b/5b
P32A13
I/O
--
PDS
X2D65
X2LD0i
2b/5b
P32A14
I/O
--
PDS
X2D66
X2LD0o
2b/5b
P32A15
I/O
--
PDS
X2D67
X2LD1o
2b/5b
P32A16
I/O
--
PDS
X2D68
X2LD2o
5b
P32A17
I/O
--
PDS
X2D69
X2LD3o
5b
P32A18
I/O
--
PDS
(continued)
Document Number: 1066D

XS1-G04B-FB512 Datasheet
9
Module
Name
Function
Type
Active
Properties
XCore 2 I/O
X2D70
X2LD4o
5b
P32A19
I/O
--
PDS
X3D00
P1A0
I/O
--
PDS
X3D01
X3LA4o
5b
P1B0
I/O
--
PDS
X3D02
X3LA3o
5b
P4A0 P8A0 P16A0 P32A20
I/O
--
PDS, RU
X3D03
X3LA2o
5b
P4A1 P8A1 P16A1 P32A21
I/O
--
PDS, RU
X3D04
X3LA1o
2b/5b
P4B0 P8A2 P16A2 P32A22
I/O
--
PDS, RU
X3D05
X3LA0o
2b/5b
P4B1 P8A3 P16A3 P32A23
I/O
--
PDS, RU
X3D06
X3LA0i
2b/5b
P4B2 P8A4 P16A4 P32A24
I/O
--
PDS, RU
X3D07
X3LA1i
2b/5b
P4B3 P8A5 P16A5 P32A25
I/O
--
PDS, RU
X3D08
X3LA2i
5b
P4A2 P8A6 P16A6 P32A26
I/O
--
PDS, RU
X3D09
X3LA3i
5b
P4A3 P8A7 P16A7 P32A27
I/O
--
PDS, RU
X3D10
X3LA4i
5b
P1C0
I/O
--
PDS
X3D11
P1D0
I/O
--
PDS
X3D12
P1E0
I/O
--
PDS, RU
X3D13
X3LB4o
5b
P1F0
I/O
--
PDS, RU
X3D14
X3LB3o
5b
P4C0 P8B0 P16A8 P32A28
I/O
--
PDS, RU
X3D15
X3LB2o
5b
P4C1 P8B1 P16A9 P32A29
I/O
--
PDS, RU
X3D16
X3LB1o
2b/5b
P4D0 P8B2 P16A10
I/O
--
PDS, RU
X3D17
X3LB0o
2b/5b
P4D1 P8B3 P16A11
I/O
--
PDS, RU
X3D18
X3LB0i
2b/5b
P4D2 P8B4 P16A12
I/O
--
PDS, RU
X3D19
X3LB1i
2b/5b
P4D3 P8B5 P16A13
I/O
--
PDS, RU
X3D20
X3LB2i
XCore 3 I/O
5b
P4C2 P8B6 P16A14 P32A30
I/O
--
PDS, RU
X3D21
X3LB3i
5b
P4C3 P8B7 P16A15 P32A31
I/O
--
PDS, RU
X3D22
X3LB4i
5b
P1G0
I/O
--
PDS, RU
X3D23
P1H0
I/O
--
PDS, RU
X3D24
P1I0
I/O
--
PDS
X3D25
P1J0
I/O
--
PDS
X3D26
P4E0 P8C0 P16B0
I/O
--
PDS, RU
X3D27
P4E1 P8C1 P16B1
I/O
--
PDS, RU
X3D28
P4F0 P8C2 P16B2
I/O
--
PDS, RU
X3D29
P4F1 P8C3 P16B3
I/O
--
PDS, RU
X3D30
P4F2 P8C4 P16B4
I/O
--
PDS, RU
X3D31
P4F3 P8C5 P16B5
I/O
--
PDS, RU
X3D32
P4E2 P8C6 P16B6
I/O
--
PDS, RU
X3D33
P4E3 P8C7 P16B7
I/O
--
PDS, RU
X3D34
P1K0
I/O
--
PDS
X3D35
P1L0
I/O
--
PDS
X3D36
P1M0
P8D0 P16B8
I/O
--
PDS
X3D37
P1N0
P8D1 P16B9
I/O
--
PDS, RU
X3D38
P1O0
P8D2 P16B10
I/O
--
PDS, RU
X3D39
P1P0
P8D3 P16B11
I/O
--
PDS, RU
X3D40
P8D4 P16B12
I/O
--
PDS, RU
X3D41
P8D5 P16B13
I/O
--
PDS, RU
(continued)
Document Number: 1066D

XS1-G04B-FB512 Datasheet
10
Module
Name
Function
Type
Active
Properties
X3D42
P8D6 P16B14
I/O
--
PDS, RU
X3D43
P8D7 P16B15
I/O
--
PUS, RU
X3D49
X3LC4o
5b
P32A0
I/O
--
PDS
X3D50
X3LC3o
5b
P32A1
I/O
--
PDS
X3D51
X3LC2o
5b
P32A2
I/O
--
PDS
X3D52
X3LC1o
2b/5b
P32A3
I/O
--
PDS
X3D53
X3LC0o
2b/5b
P32A4
I/O
--
PDS
X3D54
X3LC0i
2b/5b
P32A5
I/O
--
PDS
X3D55
X3LC1i
2b/5b
P32A6
I/O
--
PDS
X3D56
X3LC2i
5b
P32A7
I/O
--
PDS
X3D57
X3LC3i
XCore 3 I/O
5b
P32A8
I/O
--
PDS
X3D58
X3LC4i
5b
P32A9
I/O
--
PDS
X3D61
X3LD4o
5b
P32A10
I/O
--
PDS
X3D62
X3LD3o
5b
P32A11
I/O
--
PDS
X3D63
X3LD2o
5b
P32A12
I/O
--
PDS
X3D64
X3LD1o
2b/5b
P32A13
I/O
--
PDS
X3D65
X3LD0o
2b/5b
P32A14
I/O
--
PDS
X3D66
X3LD0i
2b/5b
P32A15
I/O
--
PDS
X3D67
X3LD1i
2b/5b
P32A16
I/O
--
PDS
X3D68
X3LD2i
5b
P32A17
I/O
--
PDS
X3D69
X3LD3i
5b
P32A18
I/O
--
PDS
X3D70
X3LD4i
5b
P32A19
I/O
--
PDS
SS_PLL_LOCK
Reserved (do not connect)
Output
--
PD
SS_BYPASS_PLL_LOCK
Reserved (tie to VSS)
Input
--
PD
SS_PLL_TEST
Reserved (do not connect)
Input
--
SS_OTP_VREF
Reserved (do not connect)
Output
--
Reserved
SS_OTP_PWR_UP
Reserved (do not connect)
Output
--
SS_TEST_ENA
Reserved (tie to VSS)
Input
--
PD
SS_XC_CFG[1:0]
Reserved (tie to IO VDD)
Input
--
PD
SS_RESERVED
Reserved (do not connect)
Output
--
NC
Not connected
I/O
--
Document Number: 1066D

XS1-G04B-FB512 Datasheet
11
4
Block Diagram
X0D00 ¶
· 1A
1A ¶
· X3D00
X0D01 ¶ ·
1B
1B
¶ · X3D01
X0D02 ¶ ·
A
A
¶ · X3D02
X0D03 ¶ ·
4
4
rt
64KB SRAM
Thread 0
Thread 0
64KB SRAM
¶ · X3D03
X0D08 ¶ ·
rt
A
A
Po
Po
¶ · X3D08
X0D09 ¶ ·
8
8
LA
LA ¶ · X3D09
X0D04 ¶ · 0
rt
rt
3
X
B
B
X ¶ · X3D04
X0D05 ¶ ·
Po
Po
4
4
¶ · X3D05
X0D06 ¶ ·
rt
rt
Po
Po
¶ · X3D06
X0D07 ¶ ·
¶ · X3D07
X0D10 ¶ ·
1C
1C
A
A
¶ · X3D10
X0D11 ¶
· 1D
6
6
1D
1
1
¶
· X3D11
X0D12 ¶
· 1E
Boot ROM
Thread 1
Thread 1
Boot ROM
1E
rt
rt
¶
· X3D12
X0D13 ¶ ·
1F
Po
Po
1F
¶ · X3D13
X0D14 ¶ ·
C
C
¶ · X3D14
X0D15 ¶ ·
4
4
¶ · X3D15
X0D20 ¶ ·
rt
rt
B
B
¶ · X3D20
X0D21 ¶ ·
Po
8
8
Po
LB
LB ¶ · X3D21
X0D16 ¶ · 0
rt
rt
3
X
D
Po
Po
X ¶ · X3D16
X0D17 ¶ ·
D
4
4
¶ · X3D17
X0D18 ¶ ·
8KB OTP
Thread 2
Thread 2
8KB OTP
rt
rt
¶ · X3D18
X0D19 ¶ ·
Po
Po
¶ · X3D19
X0D22 ¶ ·
1G
1G
¶ · X3D22
X0D23 ¶
· 1H
1H ¶
· X3D23
X0D24 ¶
· 1I
1I ¶
· X3D24
X0D25 ¶
· 1J
1J ¶
· X3D25
X0D26 ¶
·
s
E
d
2A
2A
E ¶
· X3D26
X0D27 ¶
· 4
3
4
Security
En
Security
3
rt
rt ¶
· X3D27
X0D32 ¶
·
rt
Thread 3
Register
Thread 3
el
Register
rt
Po
C
s
n
C
Po ¶
· X3D32
X0D33 ¶
·
8
Po
d
Po
8
an
¶
· X3D33
X0D28 ¶
·
rt
En
h
rt
F
Po
C
F ¶
· X3D28
X0D29 ¶
· 4
el
Po
n
4
itch
itch
itch
2
¶
· X3D29
X0D30 ¶
· rt
3
rt
B
an
Sw
Sw
Sw
B
¶
· X3D30
X0D31 ¶
· Po
6
h
Po
1
C
61
¶
· X3D31
X0D34 ¶
· 1K
2
1K
rt
rt
¶
· X3D34
X0D35 ¶
· 1L
3
Po
Po
8D
1L
6 Clock
6 Clock
¶
· X3D35
X0D36 ¶
· 1M
1M
Blocks
Thread 4
Thread 4
Blocks
¶
· X3D36
X0D37 ¶
· 1N
1N ¶
· X3D37
X0D38 ¶
· 1O
1O
D
D
¶
· X3D38
X0D39 ¶
· 1P
8
8
1P ¶
· X3D39
X0D40 ¶
· rt
rt
Po
Po ¶
· X3D40
X0D41 ¶
·
¶
· X3D41
X0D42 ¶
·
¶
· X3D42
X0D43 ¶
·
¶
· X3D43
X0D49 ¶ ·
10 Timers
Thread 5
Thread 5
10 Timers
¶ · X3D49
X0D50 ¶ ·
¶ · X3D50
X0D51 ¶ ·
¶ · X3D51
X0D52 ¶ ·
¶ · X3D52
X0D53 ¶ · LC
LC ¶ · X3D53
X0D54 ¶ · 0
3
X
X ¶ · X3D54
X0D55 ¶ ·
¶ · X3D55
X0D56 ¶ ·
¶ · X3D56
X0D57 ¶ ·
4 Locks
Thread 6
Thread 6
4 Locks
¶ · X3D57
X0D58 ¶ ·
¶ · X3D58
X0D61 ¶ ·
¶ · X3D61
X0D62 ¶ ·
¶ · X3D62
X0D63 ¶ ·
¶ · X3D63
X0D64 ¶ ·
¶ · X3D64
X0D65 ¶ · LD
LD ¶ · X3D65
X0D66 ¶ · 0
3
X
X ¶ · X3D66
X0D67 ¶ ·
7
7
Synchronizers
Thread 7
Thread 7
Synchronizers
¶ · X3D67
X0D68 ¶ ·
¶ · X3D68
X0D69 ¶ ·
¶ · X3D69
X0D70 ¶ ·
¶ · X3D70
X0
X3
SS_PLL_BYPASS
SS_EXT_OSC_CONFIG
SS_TDO
SS_EXT_OSCHS_MODE
SS_TDI
SS_CLK
JTAG
SS_TCK
SS_XC0_BS
PLL
SS_TMS
SS_XC1_BS
SS_TRST
SS_RESET
SS_DEBUG
SS_PLL_AVDD
SS_PLL_AGND
SS_OTP_VPP
VDD
IO VDD
VSS
X1 and X2 shown on following page
Document Number: 1066D

XS1-G04B-FB512 Datasheet
12
X0 and X3 shown on previous page
X1
X2
X1D00 ¶
· 1A
1A ¶
· X2D00
X1D01 ¶ ·
1B
1B
¶ · X2D01
X1D02 ¶ ·
A
A
¶ · X2D02
X1D03 ¶ ·
4
4
64KB SRAM
Thread 0
Thread 0
64KB SRAM
¶ · X2D03
X1D08 ¶ ·
rt
rt
A
A
¶ · X2D08
X1D09 ¶ ·
Po
8
8
Po
A ¶ · X2D09
X1D04 ¶ · LA1
rt
rt
B
B
2L ¶ · X2D04
X1D05 ¶ · X
4
Po
Po
4
X ¶ · X2D05
X1D06 ¶ ·
rt
rt
Po
¶ · X2D06
X1D07 ¶ ·
Po
¶ · X2D07
X1D10 ¶ ·
1C
A
1C
A
¶ · X2D10
X1D11 ¶
· 1D
61
6
1D
1
¶
· X2D11
X1D12 ¶
· 1E
Boot ROM
Thread 1
Thread 1
Boot ROM
rt
1E
rt
¶
· X2D12
X1D13 ¶ ·
1F
Po
Po
1F
¶ · X2D13
X1D14 ¶ ·
C
C
¶ · X2D14
X1D15 ¶ ·
4
4
¶ · X2D15
X1D20 ¶ ·
rt
rt
Po
B
B
¶ · X2D20
X1D21 ¶ ·
8
8
Po
B ¶ · X2D21
X1D16 ¶ · LB1
rt
rt
2L
D
D
¶ · X2D16
X1D17 ¶ · X
4
Po
Po
X
4
¶ · X2D17
X1D18 ¶ ·
rt
8KB OTP
Thread 2
Thread 2
8KB OTP
rt
¶ · X2D18
X1D19 ¶ ·
Po
Po
¶ · X2D19
X1D22 ¶ ·
1G
1G
¶ · X2D22
X1D23 ¶
· 1H
1H ¶
· X2D23
X1D24 ¶
· 1I
1I ¶
· X2D24
X1D25 ¶
· 1J
1J ¶
· X2D25
X1D26 ¶
·
E
E
¶
· X2D26
X1D27 ¶
·
2A
2A
4
4
3
Security
Security
3
¶
· X2D27
X1D32 ¶
· rt
Thread 3
rt
rt
Register
Thread 3
Register
rt
C
s
C
Po ¶
· X2D32
X1D33 ¶
· Po
s
8
Po
d
d
Po
8
¶
· X2D33
X1D28 ¶
·
rt
En
F
En
rt
F ¶
· X2D28
X1D29 ¶
· 4
Po
el
el
Po
4
n
n
¶
· X2D29
X1D30 ¶
· rt
itch
itch
itch
rt
an
an
¶
· X2D30
X1D31 ¶
· Po
B
h
Sw
Sw
Sw
Po
6
h
C
B
C
¶
· X2D31
X1D34 ¶
· 1K
1
6
2
1
1K
2
rt
¶
· X2D34
X1D35 ¶
· 1L
3
3
rt
1L
Po
6 Clock
6 Clock
¶
· X2D35
X1D36 ¶
· 1M
Po
1M
Blocks
Thread 4
Thread 4
Blocks
¶
· X2D36
X1D37 ¶
· 1N
1N ¶
· X2D37
X1D38 ¶
· 1O
D
1O
8
D
¶
· X2D38
X1D39 ¶
· 1P
8
1P
rt
¶
· X2D39
X1D40 ¶
·
rt
Po
¶
· X2D40
X1D41 ¶
·
¶Po
· X2D41
X1D42 ¶
·
¶
· X2D42
X1D43 ¶
·
¶
· X2D43
X1D49 ¶ ·
10 Timers
Thread 5
Thread 5
10 Timers
¶ · X2D49
X1D50 ¶ ·
¶ · X2D50
X1D51 ¶ ·
¶ · X2D51
X1D52 ¶ ·
¶ · X2D52
X1D53 ¶ ·
C ¶ · X2D53
X1D54 ¶ · LC1
2L
X
X ¶ · X2D54
X1D55 ¶ ·
¶ · X2D55
X1D56 ¶ ·
¶ · X2D56
X1D57 ¶ ·
4 Locks
Thread 6
Thread 6
4 Locks
¶ · X2D57
X1D58 ¶ ·
¶ · X2D58
X1D61 ¶ ·
¶ · X2D61
X1D62 ¶ ·
¶ · X2D62
X1D63 ¶ ·
¶ · X2D63
X1D64 ¶ ·
¶ · X2D64
X1D65 ¶ · LD
D ¶ · X2D65
X1D66 ¶ · 1X
2LX ¶ · X2D66
X1D67 ¶ ·
7
7
Synchronizers
Thread 7
Thread 7
Synchronizers
¶ · X2D67
X1D68 ¶ ·
¶ · X2D68
X1D69 ¶ ·
¶ · X2D69
X1D70 ¶ ·
¶ · X2D70
Document Number: 1066D

XS1-G04B-FB512 Datasheet
13
5
Product Overview
The XMOS XS1-G04B-FB512 is a powerful device that provides a simple design
process and highly-flexible solution to many applications. The device consists of
four XCores, each comprising an event-driven processor with tightly integrated
I/O and on-chip memory. The processors run mutiple tasks simultaneously using
hardware threads, each of which is guaranteed a slice of processing power and
can execute computational code, control software and I/O interfaces. Threads use
channels to exchange data within a core or across cores. The cores are connected
via an integrated switch network, which uses a proprietary physical layer protocol,
and which can also be used to add additional resources to a design. The I/O pins
are driven using intelligent ports that can serialize data, interpret strobe signals
and wait for scheduled times or events, making the device ideal for real-time
control applications.
The device can be configured using a set of software components that are rapidly
customized and composed. XMOS provides source code libraries for many standard
components. The device can be programmed using high-level languages such as
C/C++ and the XMOS-originated XC language. XC provides extensions to C that
simplify the control over concurrency, I/O and time.
The XMOS toolchain includes compilers, a simulator, debugger and static timing
analyzer. The combination of real-time software, a compiler and timing analyzer
enables the programmer to close timings on components of the design without a
detailed understanding of the hardware characteristics.
5.1
Threads, Synchronizers and Locks
Each XCore has up to eight active threads, which issue instructions down a shared
four-stage pipeline. Instructions from the active threads are issued round-robin. If
up to four threads are active, each thread is allocated a quarter of the processing
cycles. If more than four threads are active, each thread is allocated at least
1/n cycles (for n threads). Figure 1 shows the guaranteed thread performance
depending on the number of threads used.
Figure 1:
Speed Grade
Minimum MIPS per thread (for n threads)
Thread
1
2
3
4
5
6
7
8
performance
400 MHz
100
100
100
100
80
67
57
50
There is no way that the performance of a thread can be reduced below these
predicted levels. Because threads may be delayed on I/O, however, their unused
processor cycles can be taken by other threads. This means that for more than
four threads, the performance of each thread is often higher than the predicted
minimum.
Document Number: 1066D

XS1-G04B-FB512 Datasheet
14
5.2
Channel Ends, Links and Switch
Threads communicate using point-to-point connections formed between two chan-
nel ends. Between cores, channel communications are implemented over XMOS
Links and routed through switches. The links operate in either 2bit/direction or
5bit/direction mode, depending on the amount of bandwidth required. Circuit
switched, streaming and packet switched data can both be supported efficiently.
Streams provide the fastest possible data rates between XCores (up to 250 MBit/s),
but each stream requires a single link to be reserved between switches on two
cores. All packet communications can be multiplexed onto a single link. A total of
eight 5bit links are available between every pair of cores.
Information on the supported routing topologies that can be used to connect
multiple devices together can be found in the XS1-G Link Performance and Design
Guides, document number X2215.
5.3
Ports and Clock Blocks
Ports provide an interface between the threads and I/O pins. The operation of
each port is synchronized to a clock block. A clock block can be connected to an
external clock input, or it can be run from the divided reference clock. A clock
block can also output its signal to a pin. On reset, each port is connected to clock
block 0, which runs from the reference clock.
The ports and links are multiplexed, allowing the pins to be configured for use
by ports of different widths or links. If an XMOS Link is enabled, the pins of the
underlying ports are disabled. If a port is enabled, it overrules ports with higher
widths that share the same pins. The pins on the wider port that are not shared
remain available for use when the narrower port is enabled. Ports always operate
at their specified width, even if they share pins with another port.
5.4
Timers
Timers are 32-bit counters that are relative to the reference clock. A timer is
defined to tick every 10 ns. This value is derived from the reference clock, which is
configured to tick at 100 MHz by default.
5.5
SRAM
Each XCore integrates a single 64 KB SRAM bank for both instructions and data. All
internal memory is 32 bits wide, and instructions are either 16-bit or 32-bit. Byte
(8-bit), half-word (16-bit) or word (32-bit) accesses are supported and are executed
within one core clock cycle. There is no dedicated external memory interface,
although data memory can be expanded through appropriate use of the ports.
Document Number: 1066D

XS1-G04B-FB512 Datasheet
15
5.6
OTP
Each XCore integrates 8 KB one-time programmable (OTP) memory along with a
security register that configures system wide security features. The OTP holds
data in 2k rows x 32-bit configuration which can be used to implement secure
bootloaders and store encryption keys. Data for the security register is loaded
from the OTP on power up.
5.6.1
Security Register
The security register enables the following security features:
· Secure Boot: The XCore is forced to boot from address 0 of the OTP, allowing
the XCore boot ROM to be bypassed (see §5.8). This feature can be used to
implement a secure bootloader which loads an encrypted image from external
flash, decrypts and CRC checks it with the processor, and discontinues the
boot process if the decryption or CRC check fails. XMOS provides a default
secure bootloader that can be written to the OTP along with secret decryption
keys.
· Disable JTAG: The JTAG interface is disabled, making it impossible for the
processor state or memory content to be accessed via the JTAG interface.
· Disable Link access: Other processors are forbidden access to the processor
state via the system switch.
Disabling both JTAG and Link access transforms a core into a "secure island"
with other cores free for non-secure user application code.
· Disable Global Debug access: Disables access to the SS_DEBUG pin.
· OTP Master and Sector Lock: Further access to the OTP is prevented by
setting the master lock. Locks can also be applied to each of the four OTP
sectors individually.
These security features provide a strong level of protection and are sufficient for
providing strong IP security.
5.7
PLL
The PLL is used to generate all on-chip clocks. SS_CLK is the reference clock input.
It should be supplied with a clock with monotonic rising edges and should be
stable before SS_RESET is taken high.
Many standard clock frequencies can be used with appropriate settings configured
into the PLL. At boot time, before the PLL can be reconfigured, the PLL multiplier
is set using the pins specified in the table in Figure 2. The PLL increases the
clock frequency to the core frequency used to run the processor data path and the
switch.
Document Number: 1066D

XS1-G04B-FB512 Datasheet
16
SS_PLL_ SS_EXT_OSC_ SS_EXT_OSC_ PLL multi- CLK Input Boot Freq-
BYPASS CONFIG
HS_MODE
plier ratio (MHz)
ency (MHz)
0
0
X
20
12.5­20
250­400
Figure 2:
0
1
0
5
25­50
125­250
PLL boot
0
1
1
2.5
50­100
125­250
modes
1
X
X
0.5
<100
<50
Clock frequencies of betweeen 20 MHz and 25 MHz are not supported.
Further details on configuring the clock can be found in the XS1-G Clock Frequency
Control document, document number X140.
5.8
Boot ROM
The boot procedure is illustarted in Figure 3. If bit 5 of the security register is set
(see §5.6.1), the device boots from OTP. Otherwise, SS_XC0_BS[1:0] controls the
boot source.
Start
Boot ROM
Primary boot
No
Security Register
Bit [5] set
Yes
Copy OTP contents
Boot according to
OTP
to base of SRAM
boot source pins
Figure 3:
Boot
procedure
Execute program
SS_XC0_BS[1:0] operates as an input prior to the de-assertion of SS_RESET. The
device latches the value driven onto these pins on the rising edge (de-assertion)
of SS_RESET. The value driven should be static and configured using pullup or
pulldown resistors, as the device drives the boot status on these pins after reset.
The value configured on these two pins defines the boot mode, as described in
Figure 4.
After reset is complete, SS_XC0_BS[3:0] becomes an output and indicates the boot
mode, as described in Figure 5. SS_XC1_BS[3:0] also becomes an output after reset,
indicating the core 1 boot mode. SS_XCn_BS[3] indicates that the boot on core n
has completed.
Document Number: 1066D

XS1-G04B-FB512 Datasheet
17
SS_XC0_BS[1]
SS_XC0_BS[0]
Boot Mode
0
0
Reserved
0
1
Reserved
X0 boots from SPI, X1..X3 from
channel end 0 via X0
PinA
Signal
Description
1
0
X0D00
MISO
Master In Slave Out
X0D01
SS
Slave Select
X0D10
SCLK
Clock
Figure 4:
X0D11
MOSI
Master Out Slave In
Boot source
1
1
None: Device waits to be booted
pins
via JTAG
A The pins used for SPI boot are hardcoded in the boot ROM and cannot be changed. An SPI boot
program can be burned into OTP and used at any time.
SS_XCn_BS[2]
SS_XCn_BS[1]
SS_XCn_BS[0]
Boot Mode
0
0
1
Xn booted from OTP
0
1
0
Reserved
Figure 5:
Boot mode
0
1
1
Xn booted from chanend 0
indication
1
0
0
Xn booted from SPI
pins
1
0
1
Xn booted from JTAG
5.9
JTAG
The JTAG module can be used for loading programs, boundary scan testing, in-
circuit source-level debugging and programming the OTP memory.
The JTAG chain structure is illustrated in Figure 6. Directly after reset, two TAP
controllers are present in the JTAG chain for each XCore: the boundary scan TAP
and the chip TAP. The boundary scan TAP is a standard 1149.1 compliant TAP that
can be used for boundary scan of the I/O pins. The chip TAP provides access into
the XCore, switch and OTP for loading code and debugging.
The SS_TRST pin must be asserted low during and after power up for 100 ns. If
JTAG is not required, the SS_TRST pin can be tied to ground with a 1k resistor to
hold the JTAG module in reset.
The JTAG device identification register can be read by using the IDCODE instruction.
Its contents are specified in Figure 7.
Bit31
Device Identification Register
Bit0
Figure 7:
Version
Part Number
Manufacturer Identity
1
ICODE return
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
1
1
0
0
0
1
1
0
0
1
1
value
0
0
1
0
4
6
3
3
Document Number: 1066D

XS1-G04B-FB512 Datasheet
18
SS_TRST SS_TCK
SS_TD!
SS_TMS
SS_TDO
SS_TMS
SS_TCK
SS_TRST
SS_TDI
SS_TDO
MUX controller
NC
SS_TMS SS_TCK SS_TRST
SS_TMS SS_TCK SS_TRST
SS_TMS SS_TCK SS_TRST
SS_TMS SS_TCK SS_TRST
SS_TMS SS_TCK SS_TRST
Figure 6:
SS_TDI
SS_TDO
SS_TDI
SS_TDO
SS_TDI
SS_TDO
SS_TDI
SS_TDO
SS_TDI
SS_TDO
JTAG chain
X0 JTAG
X1 JTAG
X2 JTAG
X3 JTAG
Switch JTAG
structure
The JTAG usercode register can be read by using the USERCODE instruction. Its
contents are specified in Figure 8. The OTP User ID field is read from bits [22:31]
of the security register on XCore 0 (all zero on unprogrammed devices).
Bit31
Usercode Register
Bit0
Figure 8:
OTP User ID
Unused
Silicon Revision
USERCODE
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
return value
0
0
0
2
8
0
0
0
5.10
Power Supplies
The device has the following types of power supply pins:
· VDD pins for the chip core
· IO VDD pins for the I/O lines
· SS_PLL_AVDD pins for the PLL
· SS_OTP_VPP pins for faster programming the OTP (optional)
Several pins of each type are provided to minimize the effect of inductance within
the package, all of which must be connected. The power supplies must be brought
up monotonically and input voltages must not exceed specification at any time.
The VDD supply must ramp from 0 V to its final value within 10 ms to ensure
correct startup.
Document Number: 1066D

XS1-G04B-FB512 Datasheet
19
The IO VDD supply must ramp to its final value before VDD reaches 0.4 V.
The SS_PLL_AVDD supply should be separated from the other noisier supplies on
the board. The PLL requires a very clean power supply, and a low pass filter (for
example, a 4.7 resistor and 1 µF multi-layer ceramic capacitor) is recommended
on this pin.
The SS_OTP_VPP supply can be optionally provided for faster OTP programming
times, otherwise an internal charge pump is used.
The following ground pins are provided:
· PLL_AGND for PLL_AVDD
· GND for all other supplies
All ground pins must be connected directly to the board ground.
The VDD and IO VDD supplies should be decoupled close to the chip by several
100 nF low inductance multi-layer ceramic capacitors between the supplies and
GND (for example, 4x100nF 0402 low inductance MLCCs per supply rail). The
ground side of the decoupling capacitors should have as short a path back to the
GND pins as possible. A bulk decoupling capacitor of at least 10 uF should be
placed on each of these supplies.
SS_RESET is an active-low asynchronous-assertion global reset signal. Following a
reset, the PLL re-establishes lock after which the device boots up according to the
boot mode (see §5.8). SS_RESET and must be asserted low during and after power
up for 100 ns.
Document Number: 1066D

XS1-G04B-FB512 Datasheet
20
6
DC and Switching Characteristics
6.1
Operating Conditions
Symbol
Parameter
MIN
TYP
MAX
UNITS
Notes
VDD
Core DC supply voltage
0.95
1.00
1.05
V
VDDIO
I/O DC supply voltage
3.00
3.30
3.60
V
PLL_AVDD
PLL analog supply
0.95
1.00
1.05
V
OTP_VPP
OTP external programming
6.18
6.50
6.83
V
voltage (optional program only)
Cl
XCore I/O load capacitance
25
pF
Ambient operating
0
70
°C
Ta
temperature (Commercial)
Ambient operating
-40
85
°C
Figure 9:
temperature (Industrial)
Operating
Tj
Junction temperature
125
°C
conditions
Tstg
Storage temperature
-65
150
°C
6.2
DC Characteristics
Symbol
Parameter
MIN
TYP
MAX
UNITS
Notes
V(IH)
Input high voltage
2.00
5.50
V
A, B
V(IL)
Input low voltage
-0.30
0.80
V
A, B
Figure 10:
V(OH)
Output high voltage
2.40
V
A, B
DC character-
V(OL)
Output low voltage
0.40
V
A, B
istics
R(PU)
Pull-up resistance
100K

A, C
A All pins except power supply pins.
B Internal pull-up resistors are fitter to general-purpose I/O pins.
C Use for unused I/O only. The internal pull-up resistor is not recommended as a substitute for an
external pull-up resistor.
6.3
ESD Stress Voltage
Figure 11:
Symbol
Parameter
MIN
TYP
MAX
UNITS
Notes
ESD stress
HBM
Human body model
-2.00
2.00
KV
voltage
MM
Machine model
-200
200
V
Document Number: 1066D

XS1-G04B-FB512 Datasheet
21
6.4
Reset Timing
Symbol
Parameters
MIN
TYP
MAX
UNITS
Notes
T(RST)
Reset pulse width
100
ns
Figure 12:
T(PLLLOCK)
PLL lock
1
ms
Reset timing
T(INIT)
Initialization time
<100
µs
A
A Shows the time taken to start booting after SS_RESET has gone high.
6.5
Quiescent Current
Figure 13:
Symbol
Parameter
MIN TYP MAX
UNITS
Notes
Quiescent
I(DDCQ)
Quiescent VDD current
120
mA
current
I(PLLQ)
Quiescent PLL current
4
mA
6.6
Power Consumption
Figure 14:
Symbol
Parameter
MIN TYP MAX
UNITS
Notes
Core currents
PD
Core power dissipation
1.6
Watts
A, B, C, D
A Use for budgetary purposes only.
B Assumes typical core and I/O voltages operating at 400 MHz with nominal activity on all cores.
C PD(TYP) value is the usage power consumption under typical operating conditions.
D PD(TYP) value includes quiescent current.
The core power consumption of the device is highly application dependent and
should be used for budgetary purposes only. More detailed power analysis can be
found in the XS1-G Power Consumption document, document number X1423.
6.7
Clock
Symbol
Parameter
MIN
TYP
MAX
UNITS
Notes
f
Frequency
12.5
20
20
MHz
Figure 15:
SR
Slew rate
1
2
ns
Clock
f(MAX)
System clock frequency
400
MHz
Further details can be found in the XS1-G Clock Frequency Control document,
document number X140.
Document Number: 1066D

XS1-G04B-FB512 Datasheet
22
6.8
XCore I/O AC Characteristics
Symbol
Parameter
MIN TYP MAX UNITS
Notes
T(XOVALID)
Input data valid window
8
ns
Figure 16:
T(XOINVALID)
Output data invalid window
9
ns
I/O AC char-
T(XIFMAX)
Rate at which data can be sampled
60
MHz
acteristics
with respect to an external clock
The input valid window parameter relates to the capability of the device to capture
data input to the chip with respect to an external clock source. It is calculated as the
sum of the input setup time and input hold time with respect to the external clock
as measured at the pins. The output invalid window specifies the time for which
an output is invalid with respect to the external clock. Note that these parameters
are specified as a window rather than absolute numbers since the device provides
functionality to delay the incoming clock with respect to the incoming data.
Information on interfacing to high-speed synchronous interfaces can be found in
the XS1 Port I/O Timing document, document number X9122.
6.9
XMOS Link Performance
Symbol
Parameter
MIN
TYP
MAX
UNITS
Notes
B(2blinkP)
2b link bandwidth (packetized)
87
MBit/s
A, B
Figure 17:
B(5blinkP)
5b link bandwidth (packetized)
217
MBit/s
A, B
Link
B(2blinkS)
2b link bandwidth (streaming)
100
MBit/s
B
performance
B(5blinkS)
5b link bandwidth (streaming)
250
MBit/s
B
A Assumes 32-byte packet in 3-byte header mode. Actual performance depends on size of the header
and payload.
B 7.5 ns symbol time.
The asynchronous nature of links means that the relative phasing of SS_CLK clocks
is not important in a multi-clock system, providing each meets the required stability
criteria.
6.10
JTAG Timing
Symbol
Parameter
MIN
TYP
MAX
UNITS
Notes
T(TCK)
TCK period
30
ns
T(SETUP)
TDO to TCK setup time
5
ns
A
Figure 18:
T(HOLD)
TDO to TCK hold time
10
ns
A
JTAG timing
T(DELAY)
TCK to output delay
15
ns
B
A Timing applies to SS_TMS, SS_TRST and SS_TDI inputs.
B Timing applies to SS_TDO output.
Document Number: 1066D

XS1-G04B-FB512 Datasheet
23
All JTAG operations are synchronous to SS_TCK apart from the global asynchronous
reset SS_TRST.
Document Number: 1066D

XS1-G04B-FB512 Datasheet
24
7
Package Information
Top View
Bottom View
A1 Corner
D
D1
A1 Corner
B
A
E
E1
DETAIL B
DETAIL A
Nx
b
DETAIL B
fff M C
eee M C A B
DETAIL A
// bbb C
C
A2
f
-C-
ddd C
A1
A
e
f
Dimensional Ref

Dimensional Tol

Notes
REF
Min
Nom
Max

aaa
0.15
1. All dimensions in mm.
A


1.6

bbb
0.10
2. `e' represents the basic solder ball pitch.
A1
0.27



ddd
0.20
3. `m' represents the basic solder ball matrix size.
`n' is the number of attached solder balls.
A2
1.02
1.06
1.1

eee
0.15
4. `b' is measurable at the maximum solder ball
D

20.0


fff
0.08

diameter parallel the primary datum ­ C ­.
D1

18.4




5. Dimension `aaa' is measured parallel to primary
E

20.0





datum ­ C ­.
E1

18.4




6. Primary datum ­ C ­ and the seating plane are
b

0.5





defined by the spherical crowns of the solder
balls.
c
0.32
0.36
0.40



7. The package surface shall be matte finish
e

0.8





charmilles 24 to 27.
f

0.8




8. The over package thickness `A' already
m

24





considers collapse balls.
n

512





Document Number: 1066D

XS1-G04B-FB512 Datasheet
25
7.1
Part Marking
Product code
Qualification/Speed Grade (optional)
XS1­G04B­FB512­
Q S
XMOS-YYWW
Manufacturing date code
LLLLLL.LL
Figure 19:
Part marking
Lot code
scheme
8
Ordering Information
Figure 20:
Product Code
Qualification
Speed Grade
Orderable
XS1­G04B­FB512­C4
Commercial
400 MHz
part numbers
XS1­G04B­FB512­I4
Industrial
400 MHz
9
Development Tools
XMOS provides a comprehensive suite of development tools. Source files, timing
scripts and a board design file are input to the compiler toolchain which produces
a binary executable. This executable file can be simulated, loaded onto the device
and debugged over JTAG, programmed into flash memory on the board or written
to OTP memory on the device. The tools can also encrypt the flash image and write
the decrpytion key securely to OTP memory.
The tools can be driven from either a graphical development environment or the
command line and are supported on Windows, Linux and MacOS X. The tools
are available at no cost from xmos.com/tools. Information on using the tools is
provided in a separate user guide, document number X1066.
10
Addendum: XMOS USB Interface
XMOS provides a low-level USB interface for connecting the device to a USB
transceiver using the UTMI+ Low Pin Interface (ULPI). The ULPI signals must be
connected to the pins named in Figure 21. Note also that some ports on the same
Document Number: 1066D

XS1-G04B-FB512 Datasheet
26
core are used internally and are not available for use when the USB driver is active
(they are available otherwise).
Pin
Signal
Pin
Signal
Pin
Signal
XnD02
XnD16
ULPI_DATA[2]
XnD30
XnD03
XnD17
ULPI_DATA[3]
XnD31
XnD04
XnD18
ULPI_DATA[4]
XnD32
XnD05
XnD19
ULPI_DATA[5]
XnD33
Unavailable
XnD06
XnD20
ULPI_DATA[6]
XnD37
XnD07
XnD21
ULPI_DATA[7]
XnD38
Unavailable
XnD08
XnD22
ULPI_DIR
XnD39
XnD09
XnD23
ULPI_CLK
XnD40
Figure 21:
XnD12
ULPI_STP
XnD26
XnD41
ULPI signals
provided by
XnD13
ULPI_NXT
XnD27
XnD42
Unavailable
the XMOS
XnD14
ULPI_DATA[0]
XnD28
XnD43
USB driver
XnD15
ULPI_DATA[1]
XnD29
11
Associated Design Documentation
Document Title
Information
Document Number
XS1-G Hardware Design Checklist
Board design checklist
X0124
Device Package User Guide
Land pattern, solder paste, ground
X4979
recommendations
Estimating Power Consumption For
Power consumption
X1423
XS1-G Devices
Programming XC on XMOS Devices
Timers, ports, clocks, threads and
X1066
channels
XMOS Tools User Guide
Compilers, assembler and
X1089
linker/mapper
Timing analyzer and debugger
Flash and OTP programming utilities
· Example schematic diagrams detailing minimal system configurations are available from
http://www.xmos.com/support/silicon.
Document Number: 1066D

XS1-G04B-FB512 Datasheet
27
12
Related Documentation
Document Title
Information
Document Number
The XMOS XS1 Architecture
ISA manual
X0102
XS1 Port I/O Timing
Port timings
X9122
XS1-G System Specification
Link, switch and system information
X2725
XS1-G Link Performance and Design
Link timings
X2215
Guidelines
XS1-G Clock Frequency Control
Advanced clock control
X1340
Document Number: 1066D

XS1-G04B-FB512 Datasheet
28
13
Revision History
The page numbers in this section refer to this document.
Rev. 1066D­05/11
1. Revised format.
2. Standard XMOS Link format XnLn on page 4.
Rev. 1066C­01/11
1. Replaced "Port Pin Table" with "Signal Description" on page 4.
2. Updated "ULPI" on page 25 with set of disabled signals.
3. Removed "Device Configuration".
4. Added "Associated Design Documentation" on page 26.
5. Clock frequencies of betweeen 20 MHz and 25 MHz are not supported.
6. Removed documentation of numerous JTAG commands, which were incorrect.
7. Updated Figure 10 in "DC Characteristics" on page 20 by removing rows for I(OH) and
I(OL).
8. Updated Figure 17 in "XMOS Link Performance' on page 22 by removing rows for B(2link)
and B(5link), and adding rows for B(2linkP), B(5linkP), B(2linkS) and B(5linkS).
9. Renamed IO VSS signals to VSS.
Rev. 1066B­06/10
1. Updated pin list on page 4.
2. Updated "Power Consumption" on page 21.
Rev. 1066A­12/09
1. Revised format.
Copyright © 2010 XMOS Limited, All Rights Reserved.
XMOS Limited is the owner or licensee of this design, code, or Information (collectively, the "Information")
and is providing it to you "AS IS" with no warranty of any kind, express or implied and shall have no
liability in relation to its use. XMOS Limited makes no representation that the Information, or any particular
implementation thereof, is or will be free from any claims of infringement and again, shall have no liability in
relation to any such claims.
XMOS and the XMOS logo are registered trademarks of XMOS Limited in the United Kingdom and other
countries, and may not be used without written permission. All other trademarks are property of their
respective owners. Where those designations appear in this book, and XMOS was aware of a trademark claim,
the designations have been printed with initial capital letters or in all capitals.

Revision History

Revision Released Formats Supported Tools
X1066E October 06, 2011 download N/A
X1066D May 16, 2011 download N/A
X1066C September 17, 2010 download N/A
X1066B September 17, 2010 download N/A
X1066A September 16, 2010 download N/A