;(-,e-r7 GETTING INTO MICROPROCESSORS The Signetics 2650
We continue our survey of microprocessor chips and systems with this counter), and also to calculate operand article, which takes a more detailed look at the Signetics 2650 device addresses for the indexed and relative addressing modes. This separate address and its currently available evaluation kits. Although a relatively recent adder, together with the separate instruc- entry into the market, the 2650 has a particularly powerful instruction tion address and operand address regis- set and very flexible interfacing requirements. It seems likely to become ters allows complex addressing modes to the preferred 8-bit device for general purpose microcomputers. be implemented with no increase in instruction execution time. by JAMIESON ROWE The PSW is a special purpose register which contains status and control bits. The Signetics 2650 is an 8-bit micro- (32k), arranged in four pages of 8,192 The PSW bits may be tested, loaded, processor which is made using well bytes. stored, preset or cleared using instruc- proven N-channel MOS technology. It There are seven 8-bit addressable tions which affect the PSW. Three of the runs from a single +5V supply, which general purpose registers, one of which bits act as the pointer for the return tends to simplify power supply require- is the accumulator RO. The remaining six address stack; two others act as a "condi- ments. All inputs and outputs are TTL make up the register stack, and are tion code" register, which is affected by compatible, and the chip requires only arranged in two groups of 3 selectable the results of compare, test and arithme- a single-phase clock signal input. As the by one of the bits in the Program Status tic instructions and may be used by con- chip operates in static mode, there is no Word register (PSW). ditional branch instruction; other bits minimum clock frequency. Apart from the register stack there is store overflow, carry, the selection bit for With the original 2650 chip, the maxi- a subroutine return address stack, con- the two register groups, an interrupt mum clock frequency was 1.25MHz, giv- sisting of eight 15-bit registers. This inhibit bit, a carry enable bit, a ing instruction cycle times of from 4.8 to allows storage of up to eight return logical/arithmetic compare select bit, 9.6 microseconds. However, the cur- addresses, and hence provides for up to and flag and sense bits for external bit- rently available 2650-1 chip is rated to eight levels of subroutine nesting. (A serial interfacing. operate up to 2MHz, reducing the nested subroutine is a subroutine itself It has been said that the 2650 has the instruction cycle times to the range 3.6 called by a subroutine.) most minicomputer-like instruction set — 7.2us. The arithmetic and logic unit (ALU) of any microprocessor currently avail- The broad architecture of the 2650 chip performs arithmetic, logic and shifting able. There are 75 basic instructions, but is shown in the block diagram below. It functions. It operates on 8-bits in parallel, many of these are actually subdivided uses an 8-bit bidirectional data bus, and and uses carry-look-ahead logic. A into a number of variations. For example a separate 15-bit address bus. This gives second adder is used to increment the the eight arithmetic instructions may be a direct addressing range of 32,768 bytes instruction address register (program performed either with, or without car-
atilt511, T ■ J•N 045AM ST ar• 55 400•15.5 st ar . ST •T US .4050
41. MOLT 50011511 MA COTIOITIOM COO! ssalinoL 'IOM £005415 RI GIST1 • 550 SITIOK5 LOOK
051•540 4005151 5101511 0
DATA RUT 11
500 5151 1D01• INI 5 55.,55 5 .0•It TT oNST RUCTION 5•TIRRI/51 5(015115
INT( 55101 /A VW/5n IIGT
CLOCK 1'O Of COOING £50 CONTROL LOCK THONG LOGIC 1,41504 LINIS LOGIC
The basic architecture of the 2650 microprocessor chip showing maior data, address and control paths.
GETTING INTO MICROPROCESSORS
ry/borrow; this also applies to the two rotate instructions. Similarly the four compare instructions may perform either arithmetic or logical comparison, while four of the 12 branch instructions and six of the ten subroutine branch/return instructions are conditional upon the two PSW condition code bits—giving typically about 3 possible variants. Also although there are nominally only six input-output transfer (IOT) instruc- tions, as distinct from the memory reference instructions (which may also be used for 10T), two of these are "extended" instructions which may 41. .44: ?4 address any one of 256 distinct 8-bit • •If 0 input-output ports. One, two and three-byte instructions are used, giving a high degree of programming efficiency. Register-to- register and simple IOT instructions are one byte, extended IOT instructions are two bytes, while memory-reference instructions are either two or three bytes long as required. The memory reference addressing modes provided by the 2650 are generally agreed to be the most extens- ive and versatile of any micro-processor currently available. The modes are as follows: program relative with a displacement memory and peripheral device. 1. Immediate addressing, with the data range of from —64 to +63. The 2650 has a single level vectored mask or value in the second byte of the 7. Indirect addressing with post index- interrupt capability. Whei, it enters the instruction itself. ing. interrupt mode, the chip is able to input 2. Direct addressing, either absolute or 8. Indirect addressing with post indexing an 8-bit address vector via the data bus. program relative with a displacement and auto increment. This may be used with either direct or range of from —64 to +63. indirect addressing to access interrupt 3. Direct indexed addressing, absolute. 9. Indirect addressing with post indexing servicing routines in any part of the 4. Direct indexed addressing with auto and auto decrement. memory space. increment. Memory and IOT interfacing of the As you should be able to see from this 5. Direct indexed addressing with auto 2650 is asynchronous, using "handshak- brief rundown of its salient features, the decrement. ing" control signals. This makes the 2650 2650 is a particularly flexible micro- 6. Indirect addressing, either absolute or compatible with almost any type of processor, and one which is very well suited for general-purpose micro- computer applications. M such it would
MEM seem a good choice for anyone seeking SE L SELECT II. XI X S SE L DECODE PROM R AM to build up a minicomputer-type system based on a microprocessor. At the same time, the relatively low I 'S 4 cost of the basic chip (currently around $20) and its ability to operate with little more than a clock generator and a ROM ADDRESS IS BUFF ER ABUSE ABUS I. in dedicated mode would also make it a good choice for low level applica- R tions. Signetics make two evaluation kits DATA MUSE - DBUS7 SUFFER based on the 2650, and these are cur- n• rently available in Australia from Philips.
EDGE CONNECTO The more elaborate of the two is the NON. NON NON, NON EXTENDED EXTENDED EXTENDED EXTENDED RD PC1001, which comes as a ready-wired CONTROL INPUT OUTPUT INPUT OUTPUT LINE 2 2 BOA PC board together with edge connector SUFFERS TO socket and literature. The other kit is a CONTROL DECODE little less elaborate, and comes as either PROM 432X$) a completely wired PC board or as an assemble-it-yourself kit. In wired form it SERIAL is designated the PC1500, while the D-I-Y 1/0 4 DRIVER/ version is the KT9500. RECEIVER 4-4 I I ./ Both kits are basically small microcom- •OPREO. ntowirNIT. INTACK. was. Itws. witS. MA. FAME. WM. RESET, puters, capable of being used directly The PC1001 evaluation board system, which is also pictured at top of this page. with a power supply and an ASCII GETTING INTO MICROPROCESSORS
teleprinter to develop small 2650 programs in machine language. They could also be expanded into quite pre- tentious minicomputer systems, by adding further memory and IOT facili- ties. An add-on RAM memory board is in fact available, and is directly compatible with either kit. Designated the PC2000, it provides an additional 4k bytes of memory. At the time of writing this article, we have only had the opportunity to examine and use one of the PC1001 evaluation kits. This is on a PC board measuring 203 x 175mm, with a 100-way double sided edge connector along one of the longer sides. The PC board is pictured, and as you can see there are quite a few IC's apart from the micro- processor. In fact the PC board is a three-layer assembly, with copper conductors sand- wiched in between two layers of epoxy- fibreglass as well as on the two external surfaces. This has allowed Signetics to fit a surprisingly large amount of circuitry on the relatively modest PCB area. On the PC1001 board is 1k bytes of RAM, capable of storing quite a respect- able user program. In addition there is another 1k bytes of ROM, containing a resident monitor-debug program which Signetics have dubbed "PIPBUG". This will be described shortly. There is an on-board serial asyn- chronous teleprinter interface, which may be adjusted by means of wire links for either 20mA current loop interfacing or RS232-type voltage interface. In addition to the teleprinter interface there are four 8-bit parallel IOT ports— two inputs and two outputs. These are wired to be accessed via the two-byte "non-extended" IOT instructions, so that small systems with four or less peripherals (apart from the teleprinter) may be implemented with no further hardware. The PC1001 board has a 1MHz crystal clock, and therefore is immediately com- patible with a 110-baud teleprinter (serial formatting is done by firmware routines, so baud timing is derived from the sys- tem clock). Full data and address bus buffering is provided on the PC1001 board, to sim- plify addition of further memory or peripherals. All of the control signals are also available at the edge connector in buffered form, which again simplifies any required interfacing. Although at the time of writing we have not had the opportunity to examine and use the PC1500/KT9500 evaluation kit, we understand that this is based on a PC board identical in size to that of the PC1001, And although the second kit is nominally a less pretentious one, it still offers quite impressive facilities. For example it still provides 1k bytes 1111•111111111116. AIR GETTING INTO MICROPROCESSORS
of ROM, with the same resident monitor- SIMPLE ANSWER-BACK PROGRAM FOR SIGNETICS PC1001 SYSTEM debug program (PIPBUG) provided on DEVELOPED BY 4.1.ROWE,"ELECTRONICS AUSTRALIA" MAGAZINE 11/7/76 the PC1001. The only difference in terms NOTE: PROGRAM STARTS AT LOCATION 500 (HEX) of on-board memory is the RAM, which in this case is of only 512 bytes. This is LISTING: still adequate for a lot of modest programming, of course—and you can 500 7o CO PPSU 4d /SET UP TTY always add further memory, as the board 5d2 3F d2 66 BSTA,UN CHIN /FETCh CHAR FnuN TTY VIA PIPBUG RTN again provides fully buffered data, 505 Cl STRL,RI isa4g. address and control signal buses. 506 3F 02 84 bSTA,UN COUT /ECHJ VIA PIPOUG ROUTINE The serial asynchronous teleprinter 509 01 LUDL,R1 /RESTjAE IN no interface is still provided, but there are 50A A4 dJ SUI:11,Hd "CR" /ROm CRAP. -CR now only two 8-bit parallel IOT ports. 50C 58 74 BRNR,R0 -12 /CR? IF NOT KEEP GOING However, these are programmable in 50E 04 OA LOD1.110 "LF" /SUPPLY LF terms of direction, so that they may be 510 3F 02 84 BSTA,UN CUUT used for both input and output. 513 05 00 LODI..111 /SET Rlm0 515 OD 25 26 LODA,RI 526+ /FETCH A(JSWER CHAR In place of the crystal clock, the 518 C3 STAZ,R3 /SAVE PC1500/KT9500 has an R-C clock oscilla- 519 3F 02 B4 BSTA,UW COUT /PRINT tor using a 74123 dual monostable. 51C A7 OD SUBI,R3 "CR" /R3m CHAR -CR As not all of the PC board is used by 51E 58 75 BRNR,R3 -11 /CR? IF NOT KEEP 601NG the basic circuitry of the PC1500/KT9500 520 04 OA LODI,R0 "LF" /YES; SUPPLY LF system, the unused area is provided with 522 3F 02 B4 BSTA,UN COUT plated through holes on 0.3in centres, to 525 18 5A BCTR,UN -36 /BACK Tu LuUK FOR NEW INPUT allow fitting of additional memory/ 527 47 4F 20 /START OF ANSWER SUFFER peripheral decoding ICs if desired. 52A 41 57 41 52D 59 2C 49 In short, the PC1500/KT9500 evalua- 530 27 4D 20 tion kit is only a little less flexible than 533 42 55 53 the PC1001. Both are in reality small 536 59 21 OD /AWSWZR LUST END WITH CH (HEX OD) development systems, capable of being used to develop and run 2650 programs. And in their basic form, each could be SAMPLE OF OPERATION: used to develop programs for running on the other—apart from the memory size difference. In that sense they are soft- *u500 ware compatible. Not only this, of course, but because HELLO THERE, WhAT AT PRESENT ARE YOU COMPUTING? they use the same resident monitor- GO AWAY,I'M BUSY! debug program they are also virtually DON'T BE LIKE THAT,PLEASE identical in the operating sense. GO AWAY,I'M SUSYI As evaluation kit resident debug programs go, PIPBUG seems quite a flex- This simple novelty program was written largely to verify that the teletype servicing ible one. It recognises seven basic com- routines in PIPBUG could be called by a user program. The listing shows instruction mands, each of which consists of an mnemonics and comments as well as the actual instructions in hexadecimal code. alphabetic character, any required numerical parameters, and a terminating for application programs to call them as answer message buffer. This illustrates carriage return. The parameters are given required. the programming efficiency possible as hexadecimal characters, with leading To illustrate this, the author wrote a with the 2650's powerful instruction set zeroes unnecessary. simple novelty program for the PC1001 and wealth of memory addressing The seven commands and their func- system. Its listing and a sample of the modes. tions are as follows: operation are reproduced on these If you're interested in the PC1001 or the PC1500/KT9500 evalution kits or the A — See and alter memory pages, and as you can see it does nothing PC2000 add-on memory, they are avail- B — Set breakpoint (2 permitted) more than monitor input from the able from the Electronic Components C — Clear breakpoint teleprinter, waiting for the person at the and Materials Division of Philips Indus- D — Dump memory to paper tape keyboard to press the carriage return tries, with offices in each state, or from G — Go to address, run key. When this occurs, it responds by typing out a curt reply: "GO AWAY, I'M their distributors. Prices for the kits are L — Load memory from paper tape as follows: S — See and alter registers BUSY!". I wrote this little program mainly for PC1001 — $345 plus tax The D command may be used to practice with the 2650 instruction set, and PC1500 — $245 plus tax punch out any desired range of memory also to check out the use of the PIPBUG KT9500 — $165 plus tax locations, with leader, checksum and teleprinter servicing routines. The pro-- .PC2000 — $400 plus tax trailer to facilitate reloading. Both the A gram inputs characters via the "CHIN" Each of the basic kits comes with all and S commands may be auto-incre- subroutine in PIPBUG, whose calling of the literature needed to use it. All you mented, by terminating with a line feed address is 0286, and outputs characters need is a power supply and a tele- instead of a carriage return. via the "COUT" subroutine whose call- printer. The teleprinter must com- A full listing of PIPBUG is provided ing address is 0284. As you can see the municate in ASCII code, as with most with the evaluation kits, which is very program itself starts at location 0500. other kits. Here at EA we are currently useful. Among other things, it allows the Note that the program uses one, two working on a way to allow this to be user to make use of the teleprinter servic- and three-byte instructions, and requires done at low cost using a surplus Baudot ing subroutines in PIPBUG, by arranging only 57 bytes of memory including the teleprinter. 111111111111111111.111‘. GETTING INTO MICROPROCESSORS A "baby" system using the Signetics 2650
Here is surely the simplest and lowest-cost way of getting to know the user program storage, and there is no on- Signetics 2650 microprocessor. A complete microcomputer system on board decoding or buffering for further memory or peripheral expansion. a single small PC board, you can build it for around $70, not counting In short, it is a "bare minimum" 2650 a power supply or terminal. Despite its low cost, it offers the same system, designed to be the cheapest and debug and monitor program in ROM provided by more expensive sys- easiest way of getting a 2650 up and run- tems, together with 256 words of RAM. ning. At the same time, it offers the full program development facilities of by JAMIESON ROWE PIPBUG, including the ability to examine and alter memory from the terminal As we have noted in earlier articles, the for the better. Just a few weeks ago we keyboard; the ability to dump programs Signetics 2650 microprocessor is a par- learned from Philips Industries that the to paper tape or cassette, and then load ticularly powerful device. Its architecture 2650 and 2608 chips were now readily memory from tape; the ability to and instruction set are very minicom- available, and at relatively low cost. (Sig- examine and set the processor registers; puter-like, making it well suited for netics is a US subsidiary of Philips.) We the ability to set and remove up to two general-purpose computing as well as accordingly suggested to them that this breakpoints, for debugging; and the low-cost dedicated applications. would be an ideal opportunity to pro- ability to run the user's program on com- In their literature, Signetics note that duce a low-cost "baby" 2650 system, mand. the device may be used to implement a based on the minimal system suggested These are quite powerful program very low cost minimal "evaluation kit" by Signetics themselves. They agreed, development facilities, not usually found type system, one which would be very and offered to make available a set of on low cost systems. As a result, our suitable for those wishing to gain devices if we cared to try the idea. "baby" 2650 microcomputer should be experience with the 2650 with the This project is the result! particularly suitable for edutational and minimum outlay of both time and Basically, it is a complete general- training purposes, whether by schools money. However they themselves have purpose microcomputer, just like the lar- and colleges or by individual enthusi- not made such a minimal evaluation sys- ger evaluation kits. In fact it has the same asts. tem available, only larger systems such debug and monitor program as the larger As you can see from the diagrams and as the PC1001 and PC1500 systems. kits—"PIPBUG"—resident in the 2608 photograph, it consists of only a handful This seemed rather a pity to us, as at ROM (1k x 8-bit words). It communi- of parts on a small PC board. There are least one other microprocessor has been cates directly with a standard 20mA only six ICs, one transistor and a few available in a really minimal system, and asynchronous data terminal, such as an resistors and capacitors, and the PCB is this has proved very popular. However ASR-33 Teletype or the video data ter- single-sided to keep the cost down. as the 2650 and its 2608 ROM chip have minal described in our January and Heart of the circuit is the 2650 chip been in rather short supply until recently, February issues, and requires a single 5V itself, a powerful 8-bit microprocessor there seemed little hope of being able to DC power supply. with an instruction set of 75 instructions, remedy the situation as far as the 2650 The main difference between this sys- and eight different addressing modes. was concerned. tem and the larger systems is that there Fabricated using low-threshold ion Happily this situation has now changed is only 256 bytes of RAM memory for implantation, it is an N-channel silicon
At left is our new "baby" 2650 microcomputer, complete on its small PC board. It offers the same PIPBUG program in ROM as provided on the lar- ger systems. The full circuit diagram is shown on the fac- ing page, together with an optional power supply.
68 ELECTRONICS Australia, March, 1977 W -a
co N
tc. e
N2 / 400, 0 • < to Q EM r• rN 14 626, CD 0 0 0A cc 2x
0 Cn co Co d 13 • 0 co CC a. 0 Co
4
C■1 CO al Oa < CO N 0 < Q
cc In ARD C.) N Cl) C) ON BO co C.) O TED
Cl) BU C) TRI IS D 47 0
CO CO Co 0 r N et en *- 0 0 NNNNintne.101 us co Co 1 MI C41 7,11.1.21- 141N N , 5 N ‘1. M N r 0 O r N M tt to CO N CO Co 0 r- N O 0000000 O 0000001:100".,.7 W < < < < < < <