#
# Kiwi Scientific Acceleration - AesTransform - cversion and cversion coded into C#
#
#

ANAME =aesplain

CSC     ?=mcs
KLIB1   ?=${HPRLS}/kiwipro/kiwic/distro/support/Kiwi.dll
KIWIC   ?=${HPRLS}/kiwipro/kiwic/distro/bin/kiwic
CV1G    ?=${HPRLS}/kiwipro/kiwic/distro/lib/cvgates.v

all: cversion
#ool  $(ANAME).v  isim
# killer


tool:
	cd $(HPRLS)/kiwipro/kiwic/src ; make tool

killer:
	rm -f $(ANAME).v

KIWIFLAGS= -vnl-resets=synchronous \
	-res2-loadstore-port-count=0 \
	-res2-regfile-threshold=512 \
        -bevelab-default-pause-mode=hard \
        -bevelab-soft-pause-threshold=2232 \
        -vnl-roundtrip=disable \
        -repack-to-roms=enable \
        -kiwic-cil-dump=combined \
        -kiwic-register-colours=1

#        -kiwife-gtrace-loglevel=0 \
#	 -kiwic-kcode-dump=enable 

# 	-vnl-layout-delay-estimate=enable 
#	-res2-loglevel=0 \
# 	-res2-combram-threshold=

# -kiwic-register-colours=1
# -diosim-tl=100 


$(ANAME).exe:$(ANAME).cs 
	$(CSC) $(ANAME).cs -r:$(KLIB1)

$(ANAME).v:$(ANAME).exe 
	$(KIWIC) -vnl-rootmodname DUT $(ANAME).exe -vnl $(ANAME).v $(KIWIFLAGS)
#	$(KIWIC) --help


monorun:$(ANAME).exe
	MONO_PATH=$(HPRLS)/kiwipro/kiwic/distro/support mono $(ANAME).exe
#	$(KIWIC) --help


isim:$(ANAME).v
	iverilog $(ANAME).v vsys.v $(CV1G)
	./a.out // | tee icarus.spool
	mv vcd.vcd ~/Dropbox


# eof

cversion:
	gcc -g -O2 aesplain.c
	time	./a.out
