home *** CD-ROM | disk | FTP | other *** search
-
- ;PALASM Design Description
-
- ;---------------------------------- Declaration Segment ------------
- TITLE TUTOR16.PDS
- PATTERN A
- REVISION 1.0
- AUTHOR J.ENGINEER
- COMPANY ADVANCED MICRO DEVICES
- DATE 01/01/89
-
- CHIP STEPPER PAL23S8
-
- ;---------------------------------- PIN Declarations ---------------
- PIN 1 CLOCK COMBINATORIAL ; INPUT
- PIN 2 FULL COMBINATORIAL ; INPUT
- PIN 3 CW COMBINATORIAL ; INPUT
- PIN 4 GO COMBINATORIAL ; INPUT
- PIN 10 GND ; INPUT
- PIN 13 SW1 REGISTERED ; I/O
- PIN 14 SW2 REGISTERED ; I/O
- PIN 15 SW3 REGISTERED ; I/O
- PIN 16 SW4 REGISTERED ; I/O
- PIN 17 IHS REGISTERED ; I/O
- PIN 20 VCC ; INPUT
-
- NODE 4..10 DUMMY[1..7]
-
- ; THE ABOVE DUMMY NODE STATEMENT IS ADDED TO FORCE THE ASSIGNMENT OF
- ; STATE BITS TO BE DONE ON NODES WHERE THERE IS NO CONFLICT WITH THE
- ; OUTPUT PINS USED IN THE DESIGN, AND WHERE THE NUMBER OF PRODUCT TERMS
- ; NEEDED BY THE STATE BITS WILL FIT WITHIN THE ARCHITECTURE OF THE PART.
-
- ;-----------------------------------State Segment ------------------
- STATE
- MOORE_MACHINE
- START_UP := POWER_UP -> S1
-
- ;begin transition equations
- S1 := FC -> S3
- + FCC -> S7
- + HC -> S2
- + HCC -> S8
- +-> S1 ;PAUSES STEPPER MOTOR AT CURRENT POSITION
- S2 := FC -> S3
- + FCC -> S1
- + HC -> S3
- + HCC -> S1
- +-> S2 ;PAUSES STEPPER MOTOR AT CURRENT POSITION
- S3 := FC -> S5
- + FCC -> S1
- + HC -> S4
- + HCC -> S2
- +-> S3 ;PAUSES STEPPER MOTOR AT CURRENT POSITION
- S4 := FC -> S5
- + FCC -> S3
- + HC -> S5
- + HCC -> S3
- +-> S4 ;PAUSES STEPPER MOTOR AT CURRENT POSITION
- S5 := FC -> S7
- + FCC -> S3
- + HC -> S6
- + HCC -> S4
- +-> S5 ;PAUSES STEPPER MOTOR AT CURRENT POSITION
- S6 := FC -> S7
- + FCC -> S5
- + HC -> S7
- + HCC -> S5
- +-> S6 ;PAUSES STEPPER MOTOR AT CURRENT POSITION
- S7 := FC -> S1
- + FCC -> S5
- + HC -> S8
- + HCC -> S6
- +-> S7 ;PAUSES STEPPER MOTOR AT CURRENT POSITION
- S8 := FC -> S1
- + FCC -> S7
- + HC -> S1
- + HCC -> S7
- +-> S8 ;PAUSES STEPPER MOTOR AT CURRENT POSITION
-
- ;begin output equations
- S1.OUTF := SW1 * /SW2 * SW3 * /SW4 * /IHS
- S2.OUTF := SW1 * /SW2 * /SW3 * /SW4 * IHS
- S3.OUTF := SW1 * /SW2 * /SW3 * SW4 * /IHS
- S4.OUTF := /SW1 * /SW2 * /SW3 * SW4 * IHS
- S5.OUTF := /SW1 * SW2 * /SW3 * SW4 * /IHS
- S6.OUTF := /SW1 * SW2 * /SW3 * /SW4 * IHS
- S7.OUTF := /SW1 * SW2 * SW3 * /SW4 * /IHS
- S8.OUTF := /SW1 * /SW2 * SW3 * /SW4 * IHS
-
- ;begin condition equations
- CONDITIONS
- FC = FULL * CW * GO
- FCC = FULL * /CW * GO
- HC = /FULL * CW * GO
- HCC = /FULL * /CW * GO
-
- ;----------------------------------- Simulation Segment ------------
- SIMULATION
- TRACE_ON CLOCK FULL CW SW1 SW2 SW3 SW4 IHS
- SETF /CLOCK FULL CW GO
- FOR CNT := 1 TO 4 DO
- BEGIN
- CLOCKF CLOCK
- END
- SETF /FULL
- FOR CNT := 1 TO 7 DO
- BEGIN
- CLOCKF CLOCK
- END
- SETF /FULL /CW
- FOR CNT := 1 TO 7 DO
- BEGIN
- CLOCKF CLOCK
- END
- SETF FULL /CW
- FOR CNT := 1 TO 7 DO
- BEGIN
- CLOCKF CLOCK
- END
- SETF /GO
- FOR CNT := 1 TO 7 DO
- BEGIN
- CLOCKF CLOCK ;REMAINS IN SAME STATE WHILE GO IS LOW
- END
-
- TRACE_OFF
- ;-------------------------------------------------------------------
-