32008-based single-board microcomputer

5
32008-based single-board microcomputer Jacob Davidson describes a simple low-cost NS32008 evaluation board A single-board microcomputer was built based on the NS32008 microprocessor. It was designed for evaluation of the processor's performance and ease of use, and illustrates some design ideas relevant to those evaluating 16/32-bff microprocessors in the 32000 series. microprocessors evaluation boards NS32008 The advent of 16-bit and 32-bit microprocessors has led to the rapid replacement of their 8-bit counterparts in many applications. National Semiconductor's Series 32000 microprocessor family includes the NS32008, which has a 32-bit internal architecture, an 8-bit data bus and a 24-bit address bus, allowing for a total c~" 16 Mbyte of memory addressing. In this respect it compares favourably with Motorola's 68008 and Intel's 8088, both of which possess an 8-bit data bus and a 20-bit address bus. An application of the 32008 is in colour graphics terminal controllers, in which the amount of RAM associated with the graphics functions may exceed I Mbyte. There are not many commercially available 32008-based microcomputers and potential users sometimes have trouble evaluatingthe performance and ease of use of this microprocessor. The design of the single-board micro- computer presented in this paper is intended for those considering the 32000 series for development of advanced microprocessor-based products. NS32008 MICROPROCESSOR floating point bit is not set in the configuration register the respective instructions are trapped, allowing the imple- mentation of floating point routines in software. The instruction set is characterized by • two address instructions • addressing optimized for high-level language • restricted instructions depending on the mode of operation (supervisor or user mode) instruction set expansion via traps or slave processors The 32008 has two pins, INT and NMI, allowing for maskable or nonmaskable hardware interrupts. In addition, a set of internally generated traps is used for software interrupt service as a result of an exceptional condition or a specific trap instruction. HARDWARE The design goals were a simple low-cost 32008-based single-board microcomputer with two serial interfaces allowing crossassemblers and crosslinkers to be used on a host computer for software development. The schematics in Figures 1 and 2 show the design of the board. This consists of 24 integrated circuits (ICs), the functions of which can be divided into timing, decoding, bus interface, communication interface and miscellaneous support. A list of components is given in Table 1. The Series 32000 microprocessor family was designed around a 32-bit architecture with the goal of obtaining good performance, efficient management of large address space and facilities for high-level language program development. The main features of the 32008 are 32-bit internal architecture eight 32-bit general-purpose registers six 32-bit dedicated registers • two 16-bit special registers • one 4-bit configuration register 8-bit data bus • 24-bit address bus creating a 16Mbyte uniform addressing space The configuration register is used to indicate the presence of different hardware units such as a floating point unit, an interrupt control unit or a custom slave processor. If the University of Quebec at Montreal, Case postale 8888, Succursale 'A', Montreal PQ H3C 3P8, Canada Timing The 32008 (labelled U1 in Figure 1) needs an NS32201 TCU (labelled U2) to provide timing signals. Clock signals 01 and ~2 are received from the TCU which in turn is connected to a 4.9152 MHz crystal. The TCU also sends such signals as reset, address strobe, read, write and data bus enable. Decoding The memory map is shown in Table 2. Memory is divided into eight blocks of 8 kbyte each with the monitor residing at address 0. Decoding is done by two 74LS138 decoders (U17, U18) and a 74LS00 NAND gate (U20). At the output of the decoder there are eight memory select signals (CSO-CS7) and two select signals to enable the asynchronous interfaces at addresses CO0000 and C00040. O141-9331/86/10028-05 $03.00 © 1986 Butterworth & Co. (Publishers) Ltd 28 microprocessors and microsystems

Upload: jacob-davidson

Post on 21-Jun-2016

215 views

Category:

Documents


4 download

TRANSCRIPT

32008-based single-board microcomputer Jacob Davidson describes a simple low-cost NS32008 evaluation board

A single-board microcomputer was built based on the NS32008 microprocessor. It was designed for evaluation of the processor's performance and ease of use, and illustrates some design ideas relevant to those evaluating 16/32-bff microprocessors in the 32000 series.

microprocessors evaluation boards NS32008

The advent of 16-bit and 32-bit microprocessors has led to the rapid replacement of their 8-bit counterparts in many applications. National Semiconductor's Series 32000 microprocessor family includes the NS32008, which has a 32-bit internal architecture, an 8-bit data bus and a 24-bit address bus, allowing for a total c~" 16 Mbyte of memory addressing. In this respect it compares favourably with Motorola's 68008 and Intel's 8088, both of which possess an 8-bit data bus and a 20-bit address bus. An application of the 32008 is in colour graphics terminal controllers, in which the amount of RAM associated with the graphics functions may exceed I Mbyte.

There are not many commercially available 32008-based microcomputers and potential users sometimes have trouble evaluatingthe performance and ease of use of this microprocessor. The design of the single-board micro- computer presented in this paper is intended for those considering the 32000 series for development of advanced microprocessor-based products.

N S 3 2 0 0 8 MICROPROCESSOR

floating point bit is not set in the configuration register the respective instructions are trapped, allowing the imple- mentation of floating point routines in software.

The instruction set is characterized by

• two address instructions • addressing optimized for high-level language • restricted instructions depending on the mode of

operation (supervisor or user mode) • instruction set expansion via traps or slave processors

The 32008 has two pins, INT and NMI, allowing for maskable or nonmaskable hardware interrupts. In addition, a set of internally generated traps is used for software interrupt service as a result of an exceptional condition or a specific trap instruction.

H A R D W A R E

The design goals were a simple low-cost 32008-based single-board microcomputer with two serial interfaces allowing crossassemblers and crosslinkers to be used on a host computer for software development.

The schematics in Figures 1 and 2 show the design of the board. This consists of 24 integrated circuits (ICs), the functions of which can be divided into timing, decoding, bus interface, communication interface and miscellaneous support. A list of components is given in Table 1.

The Series 32000 microprocessor family was designed around a 32-bit architecture with the goal of obtaining good performance, efficient management of large address space and facilities for high-level language program development. The main features of the 32008 are

• 32-bit internal architecture • eight 32-bit general-purpose registers • six 32-bit dedicated registers • two 16-bit special registers • one 4-bit configuration register • 8-bit data bus • 24-bit address bus creating a 16Mbyte uniform

addressing space

The configuration register is used to indicate the presence of different hardware units such as a floating point unit, an interrupt control unit or a custom slave processor. If the

University of Quebec at Montreal, Case postale 8888, Succursale 'A', Montreal PQ H3C 3P8, Canada

Timing

The 32008 (labelled U1 in Figure 1) needs an NS32201 TCU (labelled U2) to provide timing signals. Clock signals 01 and ~2 are received from the TCU which in turn is connected to a 4.9152 MHz crystal. The TCU also sends such signals as reset, address strobe, read, write and data bus enable.

Decoding

The memory map is shown in Table 2. Memory is divided into eight blocks of 8 kbyte each with the monitor residing at address 0. Decoding is done by two 74LS138 decoders (U17, U18) and a 74LS00 NAND gate (U20). At the output of the decoder there are eight memory select signals (CSO-CS7) and two select signals to enable the asynchronous interfaces at addresses CO0000 and C00040.

O141-9331/86/10028-05 $03.00 © 1986 Butterworth & Co. (Publishers) Ltd

28 microprocessors and microsystems

¢3

0 0"

Co

b,J

',,0

+ 5

VZ

~4

23!

Vcc

, F~'

r~

13i X

IN

4.91

52 M

~

NS3

2201

+S

V

CY

tim

e Z

~ ;

iT

5,0

,~" Z

cont

rol

RD

Y

11~4

X O

UT

unit

U2

~2

30

pF

15

NC

~

FC

LK

~1

It)

CLK

~

CT

TL

+SV

N

C

' ' .T

"S"O

~w

~

ADS

~W

AI

T

I R

WE

N -

- '~

1

I':'1

CW

AIT

71R

ST

I D

BE

--

Grid

R

D W

R

. I.

,,,

l,,koU

*5

V ~

LSO

0

8 3

4

32

N

C 31

N

C

.5 v

<:]~

"m]

9 2

8

I0

27

II

26

6 5

I I I I J I I_

.s

as

36

N

C 3

7

38

A

DS

DD

IN

39

N

C ~

PFS

4

0

NC 4

-4-~.0

.0 ST3

41

N

C A-

~-Ip

l ST

2 N

C ~-

'-'~ S

T I

NC

4-~.

i STO

+S

V

NC

-~- I

ILO

INT

NC

33

D-'S

+ 5V

Z~48

Vcc

A

23 4

7

NC

A

22

I 2

A21

3 H

LDA

A

20

4 H

OLD

A

19

AI8

5 6

RD

Y

AI7

A

I6

7

~ N

S3

20

08

C

PU

S

PC

U

l

U/S

A

I5

8 A

I4 9

A

I3

I0

II

AI2

A

ll

12

13

AIO

14

A9

A8

15

16

AD

7 17

A

D6

118

AD

5 A

D4

119 2O

A

D3

121

AD

2 AD

I 12

2 A

oo 1

23_

T

Gnd

L G

ndB

BB

G

13hj

: j l -

/'J7 PF

Figu

re 1

. B

oard

des

ign

_f

_T

+5V

Z~

20

18

Vcc

19

17

16

14

15

13

LS

373

12

7 U

22

4 5

3 2

;ndO

E L

E

'•'1

'" *

5VZ~

20

18

Vcc

19

17

16

14

15

13

LS

37

3

12

8 9

7 U

21

6

4 5

3 2

.nd O

E L

E

. le

l 19

_

TITI

16

14

1 ''

=7

5

15

151

~o

o

12

81

u4

9 5 2

~ LE

16

LS

24

5

15

5 14

4

U3

13

3 12

2

II

r/~

-- A

23

A22

--

A21

• "

A2

0

AI9

Ai8

~,

AI7

AI6

AI5

AI4

• A

I3

AI2

i,

All

AIO

A9

A8

• A

7 ~-

A6

•AS

A4

J'A

3

• A

2 •

AI

,, A

O

i. D

7 D

D6

• D

5 •

D4

D3

~' D

2 •D

I •

DO

AD

S

i, D

DIN

" R

/W

OE

0 P~

¢u

22

RA

~-,~

_~__

2_.Z

1 ~

÷S

V

~ Z~

+5V

.~v<

~ ~

v0:

Nc-~

I v=

A

ll --

I

AIO

21

0

' A

9 ~

) A

S

< -:

|

A7

"~--

--'J

r

d •

A6

< i

~[P

RO

' A

5 "~

-~--

~-!

A

4 ~

; '

, R

AM

A3

~

i IU

5

" l

US

A

2 ~

. .

, A

t --

li

l

AO

~o

nito

r I

D7

19

, .

,

D5

~8

kx8

,

8kx

8

D4

1~5

t "

I

D3

~r

D2

~. D

I -~

I

DO

~

)

oE

"~ e-

~ -

-~

~oz~

,~v

ed5

~_

~,14

~,

13

NC

CSO

+S

V

~~ v 15

5

~ C

SO

÷sv<

~! G

~ ,,p

~--,-

~-~

21~

Ul7

~ ~

cS5

/-),

8

Figu

re 2

.

CS

I

AS

=

Boa

rd d

esig

n

v v

v v

Vcc.

V=

l Vc

c I VC

C i

RA

M

.

U7

8kx

8

.

~1

C

E2

r

~--

~+

SV

C

S2

RA

M

U8

8kx

8

CE

I C

E2

|

~+

SV

C

S5

74LS

O0

6 C

O--

b-6~

'O

I ^*

5 V

U19

16

l,

n~

15

7

5_

~.

C T

T L

"~-~

'=-I

CL

K,~

,~.ll

i4

150:

.J'1

.-L.

- ^

91

2.':"

;,-

"H'3

60

0=./

-][

f /

i

Pd~

,,

' -

"~

6 2

24

00

~

NC

1404

0f~

DS I

RA

M

RA

M

i

U9

UIO

! i

8kx

8

8kx

8

I

CE~

CE

2

v '--

~>+5

V

~"~

SV

C

S4

CS

5 ÷

5V

?2s

D7

~ !

DTV c

. V=

c D

6~

D

6 ~"

D

S<

D5

D4.

< D

4 D

3 ~

03

D2

"~--

'~

D2

Hos

t °,

o°ez

s,I

12

8251

A

AI

I0

~ U

I3

I U

I4

~ ~-

D

term

inot

RE

SE

T N

C -

~

RX

REA

DYI

~

rXRE

ADYI

I

CTS

/']

7 os

~-rx

cP

= I

~ R

XC R

XD

I-'-

---"

TX

C

~-~

oooo

F;

Vcc

RA

M

UII

8kx

8

CE

I C

E2

~1

~>

+5

V

C

S6

+5

V

?ze

Vcc

term

inot

vcc

RA

M

UI2

8kx

8

CE

2

__•,•

v C

S7

1489

04es

<~

j

Table 1. Parts list

IC Part number Description

U1 NS32008-6 U2 NS32201-6 U3 74LS245 U4 74LS373 U5 AM2764 U6 HM6264 U7 HM6264 U8 HM6264 U9 HM6264 UI0 HM6264 U11 HM6264 U12 HM6264 U13 18251A U14 18251A

U15 1488 U16 1489 U17 74LS138 U18 74LS138 U19 14040

U20 74LS00 U21 74LS373 U22 74LS373 U23 74LS04 U24 74LS00 CY SW1 - DSI -

CPU TCU Data bus transceiver Address bus latch buffer EPROM (8 kbyte) RAM (kbyte) RAM (8 kbyte) RAM (8 kbyte) RAM (8 kbyte) RAM (8 kbyte) RAM (8 kbyte) RAM (8 kbyte) Host serial communication adapter Terminal serial communication

adapter RS232 transmitter RS232 receiver Decoder 3/8 Decoder 3/8 12-stage counter (baud rate

generator) Quad two-input NAND gate Address bus latch buffer Address bus latch buffer Hex inverter Quad two-input NAND gate 4.9152 MHz crystal Push button reset switch Eight-position DIP switch (baud

rate switch) Capacitors, resistors, connectors

Table 2. Memory map

Address Device

$000000-$001 FFF $002000-$00FFFF

$C00000-C000002 $C00040-C000042

(1) 8 kbyte EPROM (monitor) (7) 8 x 8 kbyte RAMs (56 kbyte

memory) (1) Inte18251A (terminal serial port) (1) Intel 8251A (host computer

serial port)

Communication interface

The asynchronous communication interface consists of two Inte18251A serial adapters (U13, U14). One is used to communicate with an alphanumeric terminal (address CO0000) and the other with a host computer for program development (address C00040). A circuit 14040 (U19) is used as a baud rate generator deriving different baud rates

from the frequency of 2.4576 MHz (half of the crystal frequency) by using the microprocessor signal CTTL The DS1 dip switch is used for sending different baud rates to 8251A interfaces. The RS232C interface is obtained by using a 1489 RS232C receiver (U16) and a 1488 RS232C transmitter (U15). Both are transferring signals through two DB-25 connectors normally used for RS232 communi- cation interfacing.

Bus interface

The address bus interface consists of three 74LS373 ICs (U4, U21, U22) and a 74LS245 transceiver (U3) is used for the data bus. All four circuits are enabled by the DBE (data bus enable) signal sent by the TCU. The U4 circuit is used to separate the 8-bit data bus from the lowest address byte (A0-A7).

MONITOR

The monitor program provides a set of program develop- ment services such as

• communication with aterminal and a host computer in transparent mode for program development via cross- support software

• debugging • interrupt and trap handling • object code downloading • data manipulation • program execution • supervisor call routines

Monitor commands are received from the terminal as an ASCII string followed by a carriage return.

SOFTWARE

The NSX cross-support software package is provided by National Semiconductor for program development and debugging. The package runs on VAX/VMS systems and is composed of a crossassembler, a crosslinker, a cross PASCAL compiler (ANSI compatible), a librarian, an object code formatter and a symbolic debugger.

This software development package is intended to facilitate the development of software for Series 32000 based systems. The object code that is obtained (after the programs are edited and assembled on VAX computers) can be downloaded via the serial ports to the develop- ment board for execution and debugging.

A 'floating point support library' is also available. This provides floating point mathematical routines, which can be called from PASCAL or assembly language programs, and supports emulation of the NS32081 floating point unit.

vol 10 no 1 january~february 1986 37

CONCLUSION

A simple low-cost single-board microcomputer based on the NS32008 8/32-bit microprocessor is described. This may be used as an evaluation board by microcomputer designers and engineers interested in Series 32000 microprocessors.

BIBLIOGRAPHY

Series 32000 data book National Semiconductor Corp, Santa Clara, CA, USA NSW-ASSEMB-gVMR National Semiconductor Corp, Santa Clara, CA, USA NSS-SYS32-3001 Pascal compiler National Semicon- ductor Corp, Santa Clara, CA, USA

Jacob Davidson is a professor of microelectronics at the University of Quebec in Montreal, Canada. He has participated in several com- puter process control projects in the Montreal area as chief engineer of the Computer Control and Automation Department at Tecsult Inter- national Inc, a consulting

~ engineering company in Quebec, Canada. He obtained his PhD in electrical engineering from the Ecole Polytechnique, Montreal, Canada, in 1984. His current research interests include distributed computer control, microprocessor applica- tJons, robotics and digital communications.

32 microprocessors and microsystems