สิ่งใหม SingMai Electronics

Designers and Manufacturers of Development systems and FPGA/ASIC IP cores and for Audio/Video applications

Home
Audio Modules
News
Buy On-Line
FPGA IP Cores
FPGA Hardware
Company
Contact Us

PT13 is an embedded microprocessor IP core intended for simple control operations.

Many applications would benefit from a small degree of local ‘intelligence’ and PT13 is designed for that very function. Whilst most available microprocessor IP cores require external FLASH memory and even external data memory, PT13 is optimized to be completely embedded and use as little FPGA resources as possible.

PT13 uses just 316 logic elements and as little as a single 4kbit ROM block, allowing it to fit in the smallest of FPGAs or even permit multiple instances in the same FPGA.

Yet PT13 can address up to 16kB of program memory and 4kB of user memory or memory mapped I/O peripherals and has over 45 instructions. An editor and assembler allow easy generation of code which is directly compiled into the FPGA download file.

PT13 is ideal in real time control applications allowing such functions as TV tuner control, I2C control, RC5/RC6 decoding, LCD display control, user interface control, closed caption/Teletext decoding and general housekeeping duties to be run without burdening the main control processor. These functions can also be run in very low power applications such as STB/DVD recorder standby conditions or mobile applications.

Please contact SingMai if you wish to arrange a demonstration of the core, enquiries@singmai.com.

The core is supplied as a compiled and encrypted design file for Altera FPGAs and the prices are for a one-off payment which allows unlimited use of the core for a period of 3 years. The core is supplied with 6 months telephone/e-mail support and a 3 year update and bug fix guarantee. After this time the IP core license can be renewed.

For other FPGA vendors, for ASIC applications and for alternative license arrangements please contact SingMai at the e-mail address above.

 

Instruction set
Instruction Hex Code Address Mode Description
Arithmetic
ADD A,mm $50 mm Immediate Add value $mm to accumulator A
ADD B,mm $51 mm Immediate Add value $mm to accumulator B
ADD A,B $54 Inherent Add accumulator B to Accumulator A, the result is in Accumulator A
       
SUB A,mm $58 mm Immediate Subtract value $mm from accumulator A
SUB B,mm $59 mm Immediate Subtract value $mm from accumulator B
SUB A,B $5C Inherent Subtract accumulator B from Accumulator A, the result is in Accumulator A
Logic
AND A,mm $60 mm Immediate AND Accumulator A with value $mm
AND B,mm $61 mm Immediate AND Accumulator B with value $mm
AND A,B $64 Inherent AND Accumulator A with Accumulator B
OR A,mm $68 mm Immediate OR Accumulator A with value $mm
OR B,mm $69 mm Immediate OR Accumulator B with value $mm
OR A,B $6C Inherent OR Accumulator A with Accumulator B
XOR A,mm $70 mm Immediate XOR Accumulator A with value $mm
XOR B,mm $71 mm Immediate XOR Accumulator B with value $mm
XOR A,B $74 Inherent XOR Accumulator A with Accumulator B
LSL A $78 Inherent Logical shift left Accumulator A. D7..D0 > D6..D0,0
LSL B $79 Inherent Logical shift left Accumulator B. D7..D0 > D6..D0,0
LSR A $7C Inherent Logical shift right Accumulator A. D7..D0 > 0,D7..D1
LSR B $7D Inherent Logical shift right Accumulator B. D7..D0 > 0,D7..D1
ASR A $80 Inherent Arithmetic shift left Accumulator A. C,D7..D0 > D0,D7,D7..D1
ASR B $81 Inherent Arithmetic shift left Accumulator B. C,D7..D0 > D0,D7,D7..D1
ROL A $84 Inherent Rotate left Accumulator A. D7..D0 > D6..D0,D7
ROL B $85 Inherent Rotate left Accumulator B. D7..D0 > D6..D0,D7
ROR A $88 Inherent Rotate right Accumulator A. D7..D0 > D0,D7..D1
ROR B $89 Inherent Rotate right Accumulator B. D7..D0 > D0,D7..D1
Compare
CMP A,mm $30 mm Immediate Compare Accumulator A with value $mm
CMP B,mm $31 mm Immediate Compare Accumulator B with value $mm
CMP A,B $34 Inherent Compare Accumulator A with Accumulator B
Branch
BCC A,addr $E0 addr Relative Branch if accumulator A carry clear to signed offset addr (14 bit value)
BCC B,addr $E1 addr Relative Branch if accumulator B carry clear to signed offset addr (14 bit value)
BCS A,addr $E4 addr Relative Branch if accumulator A carry set to signed offset addr (14 bit value)
BCS B,addr $E5 addr Relative Branch if accumulator B carry set to signed offset addr (14 bit value)
BEQ A,addr $E8 addr Relative Branch if accumulator A = $00 to signed offset addr (14 bit value)
BEQ B.addr $E9 addr Relative Branch if accumulator B = $00 to signed offset addr (14 bit value)
BNE A,addr $EC addr Relative Branch if accumulator A ≠ $00 to signed offset addr (14 bit value)
BNE B,addr $ED addr Relative Branch if accumulator A ≠ $00 to signed offset addr (14 bit value)
BRA addr $FC addr Relative Branch always to signed offset addr
BSR $FD addr Relative Branch to subroutine at signed offset addr
RTS $FE Inherent Return from subroutine
Load and Store
LDI A,mm $10 mm Immediate Load accumulator A with data $mm
LDI B,mm $11 mm Immediate Load accumulator B with data $mm
LDI DP,mm $12 mm Immediate Load Data Page register with data $mm
LDD A,of $18 of Direct Load accumulator A with data from program memory location $DP,of where DP is the Data page register and 'of' is an 8 bit address offset
LDD B,of $19 of Direct Load accumulator B with data from program memory location $DP,of where DP is the Data page register and 'of' is an 8 bit address offset
LDRI $1C Indexed Load accumulator A with data from program memory location $DP,B where DP is the Data page register and B is accumulator B
LDR A $20 of Direct Load accumulator A with data from RAM location $DPof where DP is the Data page register
LDR B $21 of Direct Load accumulator B with data from RAM location $DPof where DP is the Data page register
STR A $24 of Direct Store accumulator A into RAM location $DPof where DP is the Data page register
STR B $25 of Direct Store accumulator B into RAM location $DPof where DP is the Data page register
Control
NOP $00 Inherent No operation (delay 4 cycles)

 

Download the PT13 user manual

Download the Context editor

This is the highlighter file for use with the Context editor

(PT13 Assembler.chl) 

The executable code for the assembler

(as13.exe) 

 

 
   
     
       
Copyright © 2007-2008 SingMai.com. All rights reserved.