background image

 
 
 
 
 
 
 
 
 
 
 
 
 
 

Sprawozdanie z ćwiczenia numer 3  

 

Data wykonania ćwiczenia: 07.12.2005 

Temat Ćwiczenia: 

Projektowanie systemów cyfrowych w oparciu o 

układy programowalne 

 
 

 

  
 
 

 
 
 
 
 

 
 
 

 

 

 

 

 

 

 

 

Skład sekcji: 

 
 

 

 

 

 

 

 

 

Adam Pytlik 

 

 

 

 

 

 

 

 

Sebastian Sekuła 

 

 

 

 

 

 

 

 

Marcin Juranek 

 

 

 

 

 

 

 

 

Łukasz Krawczyk 

 
 

Laboratorium Mikroinformatyki 

Rok akademicki 

Termin 

Rodzaj studiów 

Kierunek 

Prowadzący 

Sekcja 

Podsekcja 

Środa 

2005/2006 

16:15-17:45 

Wieczorowe 

INF 

BSz  3 

background image

1. Temat: 

 
Tematem ćwiczenia było napisać 5-bitowy licznik odejmujący z krokiem jeden i 

z krokiem trzy.  

 

2. Kod programu (język ABEL): 
 
module licznik 
        q4,q3,q2,q1,q0 pin istype 'reg'; 
        dir pin; 
        clear pin; 
        clk pin; 
        step pin; 
        count = [q4,q3,q2,q1,q0]; 
 
equations 
        count.clk = clk; 
        count.ar = !clear; 
 
        when ((!dir) & step) then count := count - 1;  
        when ((!dir) & (!step)) then  count := count - 3;  
                 
test_vectors( [clk,clear,dir,step] -> count ) 
 
             [0, 0, 0, 0] -> 0; 
 
 
 
        @const i = 31; 
        @repeat 32  
        { 
        [.c., 1, 0, 1] -> i; 
        @const i = i - 1; 
                @if ( i < 31){ @const i = i + 32;}  
        } 
 
        @const i = 29; 
        @repeat 32  
        { 
        [.c., 1, 0, 0] -> i; 
        @const i = i - 3; 
                @if ( i < 31){ @const i = i + 32;}  
 
 
 
        } 
 
 
 
end 
 

background image

3. Wyniki działania kompilatora: 
 
Simulate EZ-ABEL 4.30  Date: Wed Dec  7 17:35:03 19:5 
Fuse file: 'licznik.tt1'  Vector file: 'licznik.tmv'  Part: 
'PLA' 
 
 
         c                 
         l   s             
       c e d t             
       l a i e   q q q q q 
       k r r p   4 3 2 1 0 
                           
V0001  0 0 0 0   L L L L L 
V0002  C 1 0 1   H H H H H 
V0003  C 1 0 1   H H H H L 
V0004  C 1 0 1   H H H L H 
V0005  C 1 0 1   H H H L L 
V0006  C 1 0 1   H H L H H 
V0007  C 1 0 1   H H L H L 
V0008  C 1 0 1   H H L L H 
V0009  C 1 0 1   H H L L L 
V0010  C 1 0 1   H L H H H 
V0011  C 1 0 1   H L H H L 
V0012  C 1 0 1   H L H L H 
V0013  C 1 0 1   H L H L L 
V0014  C 1 0 1   H L L H H 
V0015  C 1 0 1   H L L H L 
V0016  C 1 0 1   H L L L H 
V0017  C 1 0 1   H L L L L 
V0018  C 1 0 1   L H H H H 
V0019  C 1 0 1   L H H H L 
V0020  C 1 0 1   L H H L H 
V0021  C 1 0 1   L H H L L 
V0022  C 1 0 1   L H L H H 
V0023  C 1 0 1   L H L H L 
V0024  C 1 0 1   L H L L H 
V0025  C 1 0 1   L H L L L 
V0026  C 1 0 1   L L H H H 
V0027  C 1 0 1   L L H H L 
V0028  C 1 0 1   L L H L H 
V0029  C 1 0 1   L L H L L 
V0030  C 1 0 1   L L L H H 
V0031  C 1 0 1   L L L H L 
V0032  C 1 0 1   L L L L H 
V0033  C 1 0 1   L L L L L 
V0034  C 1 0 0   H H H L H 
V0035  C 1 0 0   H H L H L 
V0036  C 1 0 0   H L H H H 
V0037  C 1 0 0   H L H L L 
V0038  C 1 0 0   H L L L H 

background image

V0039  C 1 0 0   L H H H L 
V0040  C 1 0 0   L H L H H 
V0041  C 1 0 0   L H L L L 
V0042  C 1 0 0   L L H L H 
V0043  C 1 0 0   L L L H L 
V0044  C 1 0 0   H H H H H 
V0045  C 1 0 0   H H H L L 
V0046  C 1 0 0   H H L L H 
V0047  C 1 0 0   H L H H L 
V0048  C 1 0 0   H L L H H 
V0049  C 1 0 0   H L L L L 
V0050  C 1 0 0   L H H L H 
V0051  C 1 0 0   L H L H L 
V0052  C 1 0 0   L L H H H 
V0053  C 1 0 0   L L H L L 
V0054  C 1 0 0   L L L L H 
V0055  C 1 0 0   H H H H L 
V0056  C 1 0 0   H H L H H 
V0057  C 1 0 0   H H L L L 
V0058  C 1 0 0   H L H L H 
V0059  C 1 0 0   H L L H L 
V0060  C 1 0 0   L H H H H 
V0061  C 1 0 0   L H H L L 
V0062  C 1 0 0   L H L L H 
V0063  C 1 0 0   L L H H L 
V0064  C 1 0 0   L L L H H 
V0065  C 1 0 0   L L L L L 
 
65 out of 65 vectors passed. 
 
4. Wnioski końcowe: 
 

Program udało się wykonać bez większych problemów.