TMS320C54x Compatible DSP Core
16-bit fixed-point DSP — single-cycle MAC, Viterbi acceleration
DSP IP
Overview
The TMS320C54x defined a generation of fixed-point signal processing, and telecom, voice and control equipment still runs code written for it today. This core is instruction-level compatible with that architecture, so C54x assembly and the code built from it carry over rather than being rewritten.
The datapath is built for signal processing rather than general control. One program memory bus and three separate 16-bit data memory buses mean a multiply-accumulate can read both operands and write its result without bus contention. A 40-bit ALU with a 40-bit barrel shifter and two independent 40-bit accumulators sits beside a 17x17 parallel multiplier coupled to a dedicated 40-bit adder, giving a non-pipelined single-cycle MAC, while a compare-select-store unit handles the Viterbi add-compare-select and an exponent encoder computes the exponent of a 40-bit accumulator, each in one cycle.
Addressing is handled by two address generators with eight auxiliary registers and two auxiliary-register arithmetic units, with circular-buffer and block-repeat support. The address space is 192K x 16 — 64K words each of program, data and I/O — and the on-chip peripheral set covers a PLL clock generator, TDM serial port, buffered serial port, 8-bit host port interface, timer, interrupt controller and a software-programmable wait-state generator. The core comes as VHDL RTL with a behavioural model set, testbench and an FPGA synthesis set, alongside an ASIC-level specification covering pinout, memory map, register map and DC/AC characteristics.
The reference implementation described in the specification is on a 0.35 um 3.3 V static CMOS process at 20 ns per single cycle (50 MIPS) in a 144-pin TQFP. On a modern process or an FPGA the operating frequency differs and is characterised for the target.
| Instruction set | TMS320C54x instruction-level compatible (16-bit fixed point) |
|---|---|
| Architecture | Modified Harvard — one program bus + three 16-bit data buses, 6-stage pipeline |
| Compute | 40-bit ALU and barrel shifter, two 40-bit accumulators, 17x17 multiplier with a dedicated 40-bit adder (single-cycle MAC) |
| Peripherals | PLL · TDM serial · buffered serial (BSP) · 8-bit HPI · timer · interrupt controller |
Deliverables
Included with a licence
- Synthesisable Verilog RTL and integration wrappers
- Cycle-accurate reference model and equivalence checker
- Full-chain testbench (clean / correct / UE / pad vectors)
- Datasheet, manual and integration guide (on request)
Verification toolchains: Intel/Altera (Quartus) · AMD/Xilinx (Vivado) · ASIC — process-portable RTL
Engagement
How we engage
01
IP licence
Licence the verified IP as it stands. Synthesisable RTL, the verification environment and an integration guide come with it.
02
Custom development
The IP is modified or extended to your requirement. Because we design from the interface layer up, unusual requirements can be accommodated.
03
Co-development & national programmes
Joint silicon and firmware development against platform requirements, including participation in national R&D programmes. Scope and terms are agreed case by case.
More IP
Other IP in the portfolio
Controller
SSD Controller
1.44MB to 16TB from a single controller
Interface IP
SATA 6Gbps Link / Transport
Domestic SATA Gen3 interface IP
Interface IP
UFS Host Controller (AXI4)
A JEDEC UFSHCI 3.0 host controller in pure RTL
ECC
156-bit BCH ECC
Parametric BCH codec, t = 8 … 156
ECC
QC-LDPC Error Correction
Soft-decision error correction for 3D NAND TLC / QLC
Security IP
PBKDF2-HMAC Key Derivation
Password to key — an RFC 8018 hardware engine
Security IP
AES-128/256 Encryption
Combined encrypt/decrypt engine with DMA streaming
Processor IP
RV32IMAC RISC-V Core
A domestic 32-bit RISC-V soft processor
DSP IP
ADSP-2181 Compatible DSP Core
Replaces an obsolete DSP, running its original binaries
DSP IP
DSP56001 Compatible DSP Core
A 24-bit fixed-point DSP — in active development