OpenCores
URL https://opencores.org/ocsvn/csa/csa/trunk

Subversion Repositories csa

[/] [csa/] [trunk/] [makefile] - Blame information for rev 24

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 18 simon111
MODULE=decrypt
2 8 simon111
TEST_IN_FILE=test_dat/$(MODULE).in
3
TEST_TIMES=1
4 17 simon111
DEBUG=y
5 8 simon111
 
6 18 simon111
all:benchm sw_simm rtlm
7 8 simon111
 
8 13 simon111
rtlm:
9 15 simon111
        @echo compiling rtl ...
10
        @make -s -C rtl    PROJ_NAME=$(MODULE) DEBUG=$(DEBUG)
11
 
12 13 simon111
benchm:
13 15 simon111
        @echo compiling bench ...
14
        @make -s -C bench  PROJ_NAME=$(MODULE) DEBUG=$(DEBUG)
15 8 simon111
 
16 13 simon111
sw_simm:
17 15 simon111
        @echo compiling sw_sim ...
18
        @make -s -C sw_sim PROJ_NAME=$(MODULE) DEBUG=$(DEBUG)
19 8 simon111
 
20
synthesis:
21 13 simon111
        @make -s -C rtl $(MODULE)
22 8 simon111
 
23
sw:
24 13 simon111
        @make -s -C sw_sim $(MODULE)
25 8 simon111
 
26 17 simon111
preare_fn =                                                            \
27
        str="" ;                                                       \
28
        for ((i=0;i<$1;i=i+1));                                         \
29 8 simon111
        do                                                             \
30 17 simon111
                n=$$(expr $$RANDOM % 256 )    ;                        \
31
                binstr=$$(echo "ibase=10;obase=2;$$n"|bc) ;           \
32
                binstr=$$(echo "$$binstr" | awk ' { n=8-length($$1);for(i=0;i
33 13 simon111
                str=$$(printf "%s%s" $$str $$binstr) ;                 \
34 17 simon111
        done          ;                                                \
35
        echo $$str >$(TEST_IN_FILE)
36 8 simon111
 
37 17 simon111
preare_block_decypher:
38
        $(call preare_fn,64)
39
 
40
preare_key_perm:
41
        $(call preare_fn,8)
42
 
43 13 simon111
preare_key_schedule:
44 17 simon111
        $(call preare_fn,8)
45 18 simon111
 
46
preare_decrypt:
47 22 simon111
        #$(call preare_fn,204) # evenkey + oddkey + ts pacted (188)
48
        str="";
49
        cp /dev/null $(TEST_IN_FILE);
50
        cat decrypted | while read n;                        \
51
        do \
52
                n=$$(echo $$n | tr 'a-z' 'A-F');                  \
53
                binstr=$$(echo "ibase=16;obase=2;$$n"|bc); \
54
                binstr=$$(echo "$$binstr" | awk ' { n=8-length($$1);for(i=0;i
55
                str=$$(printf "%s%s" $$str $$binstr) ;                 \
56
                echo -n $$binstr >>$(TEST_IN_FILE); \
57
        done
58
 
59
preare_stream_cypher:
60
        $(call preare_fn,24)
61 13 simon111
 
62 15 simon111
ifeq ($(DEBUG),y)
63
check:
64
        @(for ((i=0;i<$(TEST_TIMES);i=i+1))                                       \
65
                do                                                                \
66
                        make -s -C sw_sim test PROJ_NAME=$(MODULE);               \
67
                        make -s -C bench test PROJ_NAME=$(MODULE);                \
68
                        diff test_dat/$(MODULE).out.sw test_dat/$(MODULE).out.v ; \
69
                done)
70 8 simon111
 
71 15 simon111
else
72 8 simon111
check:
73 13 simon111
        @(for ((i=0;i<$(TEST_TIMES);i=i+1))                                       \
74
                do                                                                \
75
                        make -s preare_$(MODULE);                                 \
76
                        make -s -C sw_sim test PROJ_NAME=$(MODULE);               \
77
                        make -s -C bench test PROJ_NAME=$(MODULE);                \
78
                        diff test_dat/$(MODULE).out.sw test_dat/$(MODULE).out.v ; \
79 8 simon111
                done)
80 15 simon111
endif
81 8 simon111
 
82 11 simon111
 
83
clean:
84 13 simon111
        @make -s -C sw_sim clean
85
        @make -s -C rtl clean
86
        @make -s -C bench clean
87
        @rm -fr test_dat/*
88 11 simon111
 
89 13 simon111
cscope:
90
        @find . -name "*.[ch]" >cscope.files
91
        @cscope -b
92
 
93
 

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.