diff --git a/accelerator-wrapper b/accelerator-wrapper index 7a5fe7024c3d2be951242c81f15aa743fca5faa8..e93c1e93794237c72d62bdf71985cf89ca091e2d 160000 --- a/accelerator-wrapper +++ b/accelerator-wrapper @@ -1 +1 @@ -Subproject commit 7a5fe7024c3d2be951242c81f15aa743fca5faa8 +Subproject commit e93c1e93794237c72d62bdf71985cf89ca091e2d diff --git a/flist/secwork_sha25_stream.flist b/flist/secworks_sha25_stream.flist similarity index 100% rename from flist/secwork_sha25_stream.flist rename to flist/secworks_sha25_stream.flist diff --git a/flist/wrapper.flist b/flist/wrapper.flist index 7aa139a8d0645eef1750635b97a6eec0b1631762..3724f23a3da3cc12e314969c94e55cadac6e9edd 100644 --- a/flist/wrapper.flist +++ b/flist/wrapper.flist @@ -20,4 +20,3 @@ +incdir+$(PROJECT_DIR)/wrapper/src/ $(PROJECT_DIR)/wrapper/src/wrapper_secworks_sha256.sv -$(PROJECT_DIR)/wrapper/src/wrapper_digest_filter.sv diff --git a/flist/wrapper_ip.flist b/flist/wrapper_ip.flist index 046c08f31d1b112a3f7ba57e5c33248d04031360..373f79d7d2a39e3964c890684e0b8fc58863fb1a 100644 --- a/flist/wrapper_ip.flist +++ b/flist/wrapper_ip.flist @@ -28,3 +28,6 @@ $(WRAPPER_TECH_DIR)/hdl/src/wrapper_ahb_reg_interface.sv // $(WRAPPER_TECH_DIR)/hdl/src/wrapper_ahb_vr_interface.sv $(WRAPPER_TECH_DIR)/hdl/src/wrapper_packet_construct.sv $(WRAPPER_TECH_DIR)/hdl/src/wrapper_packet_deconstruct.sv +$(WRAPPER_TECH_DIR)/hdl/src/wrapper_req_ctrl_reg.sv +$(WRAPPER_TECH_DIR)/hdl/src/wrapper_dmac_req.sv +$(WRAPPER_TECH_DIR)/hdl/src/wrapper_valid_filter.sv diff --git a/flow/stimgen.py b/flow/stimgen.py new file mode 100755 index 0000000000000000000000000000000000000000..103989550ff28750ce7c4b79dd67f8e544f50175 --- /dev/null +++ b/flow/stimgen.py @@ -0,0 +1,214 @@ +#!/usr/bin/env python + +import csv, os, tabulate +from enum import Enum + +soclabs_header = """;#----------------------------------------------------------------------------- +;# SoC Labs Basic Hashing Accelerator Wrapper Input Stimulus File +;# A joint work commissioned on behalf of SoC Labs, under Arm Academic Access license. +;# +;# Contributors +;# +;# David Mapstone (d.a.mapstone@soton.ac.uk) +;# +;# Copyright 2023, SoC Labs (www.soclabs.org) +;#-----------------------------------------------------------------------------""" + +class TransactionType(Enum): + """ Enumerated Types for Transaction Types for ASCII Debug """ + READ = 1 + WRITE = 2 + def __str__(self): + if (self == TransactionType.READ): + return "R" + elif (self == TransactionType.WRITE): + return "W" + +class TransactionSize(Enum): + """ Enumerated Types for Transaction Types for ASCII Debug """ + WORD = 1 + HALFWORD = 2 + def __str__(self): + if (self == TransactionSize.WORD): + return "word" + elif (self == TransactionSize.HALFWORD): + return "halfword" + +class InputBlockStruct: + def __init__(self): + self.word_list = [] + + def word_append(self, word): + self.word_list.append(word) + +class InputPacketStruct: + def __init__(self): + self.block_list = [] + + def block_append(self, block): + self.block_list.append(block) + +class WordStruct: + def __init__(self, data, addr, trans, packet_num = 0, block_num = 0, size = TransactionSize.WORD): + self.data = data + self.addr = addr + self.trans = trans + self.packet_num = packet_num + self.block_num = block_num + self.size = size + +def adp_output(out_file, word_list): + """ + This function takes a list of 32 bit words and addresses and formats + the data into .cmd format for the ADP module + testbench + """ + + data = [] + for word in word_list: + if (word.data > 0): + data.append(["a", "{0:#0{1}x}".format(word.addr,10)]) + data.append([str(word.trans).lower(), "{0:#0{1}x}".format(word.data,10)]) + + table_str = tabulate.tabulate(data, tablefmt="plain") + + with open(out_file, "w", encoding="UTF8", newline='') as f: + f.write("A\n") + f.write(table_str) + f.write("\n A") + f.write("\nX") + f.write("\n!") + +def fri_output(out_file, word_list): + """ + This function takes a list of 32 bit words and addresses and formats + the data into .fri format to be fed into fml2conv.pl script to stimulate + testbench + """ + + # Column Names + col_names = ["Transaction", "Address", "Data", "Size"] + + data = [] + for word in word_list: + if (word.data > 0): + data.append([str(word.trans), "{0:#0{1}x}".format(word.addr,10), "{0:#0{1}x}".format(word.data,10), str(word.size)]) + + table_str = tabulate.tabulate(data, headers=col_names, tablefmt="plain") + + with open(out_file, "w", encoding="UTF8", newline='') as f: + f.write(soclabs_header + "\n;") + f.write(table_str) + f.write("\nQ") # Add End of Simulation Flag + +def stimulus_generation(stim_file, ref_file, input_start_address, input_size, output_start_address, output_size, gen_fri=True): + """ + This function takes 32 bit input stimulus file from accelerator model, + calculates write addresses for each word and generates a .fri file which + can be used to stimulate an AHB testbench + """ + fri_file = os.environ["PROJECT_DIR"] + "/wrapper/stimulus/" + "ahb_input_hash_stim.fri" + + if gen_fri: + # Calculate End Address + input_end_address = input_start_address + input_size - 0x4 + # print(f"End Address is {hex(end_address)}") + + # Open Files + with open(stim_file, "r") as stim: + csvreader = csv.reader(stim, delimiter=",") + stim_list = list(csvreader) + + with open(ref_file, "r") as ref: + csvreader = csv.reader(ref, delimiter=",") + ref_list = list(csvreader) + + # Initialise Packet Lists + write_packet_list = [] + read_packet_list = [] + + # Initialise Temporary Structures + temppacketstruct = InputPacketStruct() + tempblockstruct = InputBlockStruct() + + # Put Write Data into Structs + for i in stim_list: + tempblockstruct.word_append(int(i[0],16)) + # If Last Word in Block, Append to Packet and Reset Temporary block structure + if (int(i[1])): + temppacketstruct.block_append(tempblockstruct) + tempblockstruct = InputBlockStruct() + # If Last Block in Packet , Append Packet to Packet List and Reset Temp Packet + if (int(i[2])): + write_packet_list.append(temppacketstruct) + temppacketstruct = InputPacketStruct() + + # Put Read Data into Structs + for i in ref_list: + tempblockstruct.word_append(int(i[0],16)) + # If Last Word in Block, Append to Packet and Reset Temporary block structure + if (int(i[1])): + temppacketstruct.block_append(tempblockstruct) + tempblockstruct = InputBlockStruct() + # If Last Block in Packet , Append Packet to Packet List and Reset Temp Packet + if (int(i[2])): + read_packet_list.append(temppacketstruct) + temppacketstruct = InputPacketStruct() + + + # List of Ouptut Transactions + output_word_list = [] + + # Generate Address for Packet + for packet_num, write_packet in enumerate(write_packet_list): + # Calculate Number of Blocks in First Packet + num_blocks = len(write_packet.block_list) + # Each Write Block Can Contain 16 32-bit Words (512 bits) (0x4 * 16 = 0x40) + # - Work Out Required Size = (0x40 * NumBlocks) + # - Work Out Beginning Address = (end_address + 0x4) - Size + req_write_size = 0x40 * num_blocks + start_write_addr = input_start_address + input_size - req_write_size + # Each Read Block Contains 8 32-bit Words (256 bits) (0x4 * 8 = 0x20) + req_read_size = 0x20 + start_read_addr = output_start_address + output_size - req_read_size + # print(f"Packet: {int(packet_num)} | Start Address: {hex(start_write_addr)}") + write_addr = start_write_addr + read_addr = start_read_addr + # Write out Packet containing multiple 512 bit Blocks to Input Port + for block_num, block in enumerate(write_packet.block_list): + for word in block.word_list: + word_data = WordStruct(word, write_addr, TransactionType.WRITE, packet_num, block_num) + output_word_list.append(word_data) + # Increment Address + write_addr += 0x4 + # Set Read Packet + read_packet = read_packet_list[packet_num] + # Read Back 256 Bit Packet from Output Port + for block_num, block in enumerate(read_packet.block_list): + for word in block.word_list: + word_data = WordStruct(word, read_addr, TransactionType.READ, packet_num, 0) + output_word_list.append(word_data) + # Increment Address + read_addr += 0x4 + + + # Generate ADP Command File with Write Transactions + adp_file = os.environ["PROJECT_DIR"] + "/system/stimulus/" + "adp_hash_stim.cmd" + adp_output(adp_file, output_word_list) + + # Generate FRI File with Write Transactions + fri_output(fri_file, output_word_list) + + # Call fm2conv.pl script + m2d_file = os.environ["PROJECT_DIR"] + "/wrapper/stimulus/" + "ahb_input_hash_stim.m2d" + os.system(f"fm2conv.pl -busWidth=32 -infile={fri_file} -outfile={m2d_file}") + + +if __name__ == "__main__": + accelerator_input_address = 0x6001_0000 + accelerator_input_size = 0x0000_0400 + accelerator_output_address = 0x6001_0400 + accelerator_output_size = 0x0000_0400 + stim_file = os.environ["PROJECT_DIR"] + "/wrapper/stimulus/" + "input_block_32bit_stim.csv" + ref_file = os.environ["PROJECT_DIR"] + "/wrapper/stimulus/" + "output_hash_32bit_ref.csv" + stimulus_generation(stim_file, ref_file, accelerator_input_address, accelerator_input_size, accelerator_output_address, accelerator_output_size, gen_fri=False) \ No newline at end of file diff --git a/simulate/socsim/wrapper_secworks_sha256.sh b/simulate/socsim/wrapper_secworks_sha256.sh index a36666d1f3c93cb5b1c6276b2d737835b605951e..4f7780aebcf3b542b6bcb7386fbee47bddc12939 100755 --- a/simulate/socsim/wrapper_secworks_sha256.sh +++ b/simulate/socsim/wrapper_secworks_sha256.sh @@ -27,6 +27,7 @@ xrun \ -f $PROJECT_DIR/flist/primatives.flist \ -f $PROJECT_DIR/flist/wrapper_ip.flist \ -f $PROJECT_DIR/flist/ahb_ip.flist \ + -f $PROJECT_DIR/flist/apb_ip.flist \ -f $PROJECT_DIR/flist/wrapper.flist \ -f $PROJECT_DIR/flist/ahb_vip.flist \ -f $PROJECT_DIR/flist/secworks_sha25_stream.flist \ diff --git a/system/stimulus/adp_hash_stim.cmd b/system/stimulus/adp_hash_stim.cmd index bf7c41664fde378629d20297974707aa0ad0b545..d65e2c1332040ee407493d38c962976a239e3e56 100644 --- a/system/stimulus/adp_hash_stim.cmd +++ b/system/stimulus/adp_hash_stim.cmd @@ -1,523 +1,523 @@ A -a 0x60010780 +a 0x60010380 w 0x94748770 -a 0x60010784 +a 0x60010384 w 0x0e3109cc -a 0x60010788 +a 0x60010388 w 0xc4411b41 -a 0x6001078c +a 0x6001038c w 0x5349fe99 -a 0x60010790 +a 0x60010390 w 0xbc3bdfc1 -a 0x60010794 +a 0x60010394 w 0xdeb5cb2a -a 0x60010798 +a 0x60010398 w 0xa0052ca2 -a 0x6001079c +a 0x6001039c w 0x1761b000 -a 0x600107a0 +a 0x600103a0 w 0x1b5affff -a 0x600107a4 +a 0x600103a4 w 0xeab53b7e -a 0x600107a8 +a 0x600103a8 w 0x81152f06 -a 0x600107ac +a 0x600103ac w 0x7d60ab33 -a 0x600107b0 +a 0x600103b0 w 0x1ce3c906 -a 0x600107b4 +a 0x600103b4 w 0x707476fe -a 0x600107b8 +a 0x600103b8 w 0x923737f4 -a 0x600107bc +a 0x600103bc w 0x695b2443 -a 0x600107c0 +a 0x600103c0 w 0x00000200 -a 0x600107fc +a 0x600103fc w 0x80000000 -a 0x60010fe0 +a 0x600107e0 r 0xe06f1bef -a 0x60010fe4 +a 0x600107e4 r 0xf498916a -a 0x60010fe8 +a 0x600107e8 r 0x4686ebb1 -a 0x60010fec +a 0x600107ec r 0x0dc803e5 -a 0x60010ff0 +a 0x600107f0 r 0x960ea091 -a 0x60010ff4 +a 0x600107f4 r 0xeb558be4 -a 0x60010ff8 +a 0x600107f8 r 0xe14c46de -a 0x60010ffc +a 0x600107fc r 0xe1711626 -a 0x60010780 +a 0x60010380 w 0xf7079da3 -a 0x60010784 +a 0x60010384 w 0xa0c46731 -a 0x60010788 +a 0x60010388 w 0xc51f9e09 -a 0x6001078c +a 0x6001038c w 0x8d8993e6 -a 0x60010790 +a 0x60010390 w 0xfd33039d -a 0x60010794 +a 0x60010394 w 0xe8675d4a -a 0x60010798 +a 0x60010398 w 0xc0e513a1 -a 0x6001079c +a 0x6001039c w 0x858c0663 -a 0x600107a0 +a 0x600103a0 w 0xa1fb693e -a 0x600107a4 +a 0x600103a4 w 0xd5ebd6d4 -a 0x600107a8 +a 0x600103a8 w 0x26f7441f -a 0x600107ac +a 0x600103ac w 0x907554b5 -a 0x600107b0 +a 0x600103b0 w 0x9db705fd -a 0x600107b4 +a 0x600103b4 w 0x47a57bf5 -a 0x600107b8 +a 0x600103b8 w 0xfe2518c8 -a 0x600107bc +a 0x600103bc w 0x4c5b82c1 -a 0x600107c0 +a 0x600103c0 w 0x00000200 -a 0x600107fc +a 0x600103fc w 0x80000000 -a 0x60010fe0 +a 0x600107e0 r 0xd065f05e -a 0x60010fe4 +a 0x600107e4 r 0x1623b2c9 -a 0x60010fe8 +a 0x600107e8 r 0x9d3c0a90 -a 0x60010fec +a 0x600107ec r 0xce34de30 -a 0x60010ff0 +a 0x600107f0 r 0x72fc05c5 -a 0x60010ff4 +a 0x600107f4 r 0xcf65fdbb -a 0x60010ff8 +a 0x600107f8 r 0xef598a6e -a 0x60010ffc +a 0x600107fc r 0x58d6d30f -a 0x60010780 +a 0x60010380 w 0x28b3253a -a 0x60010784 +a 0x60010384 w 0x96dbf9e5 -a 0x60010788 +a 0x60010388 w 0x55e5ab02 -a 0x6001078c +a 0x6001038c w 0x6bbbc74a -a 0x60010790 +a 0x60010390 w 0xed5fbca6 -a 0x60010794 +a 0x60010394 w 0x73ece6c4 -a 0x60010798 +a 0x60010398 w 0x832fa959 -a 0x6001079c +a 0x6001039c w 0x7a0d31bf -a 0x600107a0 +a 0x600103a0 w 0xaa1320aa -a 0x600107a4 +a 0x600103a4 w 0x9fcb8eb3 -a 0x600107a8 +a 0x600103a8 w 0x6bf549d9 -a 0x600107ac +a 0x600103ac w 0x049bd3de -a 0x600107b0 +a 0x600103b0 w 0xdd09fb8d -a 0x600107b4 +a 0x600103b4 w 0x1285908a -a 0x600107b8 +a 0x600103b8 w 0x3eb37ea8 -a 0x600107bc +a 0x600103bc w 0x68eb3a8c -a 0x600107c0 +a 0x600103c0 w 0x00000200 -a 0x600107fc +a 0x600103fc w 0x80000000 -a 0x60010fe0 +a 0x600107e0 r 0xe4e3afb2 -a 0x60010fe4 +a 0x600107e4 r 0xa3be45c9 -a 0x60010fe8 +a 0x600107e8 r 0xb43f0fa3 -a 0x60010fec +a 0x600107ec r 0x56fcb65d -a 0x60010ff0 +a 0x600107f0 r 0xbbf2982b -a 0x60010ff4 +a 0x600107f4 r 0x15cd68c7 -a 0x60010ff8 +a 0x600107f8 r 0xcc9f9269 -a 0x60010ffc +a 0x600107fc r 0xed646faf -a 0x60010780 +a 0x60010380 w 0xbfcceaa6 -a 0x60010784 +a 0x60010384 w 0xa2264db5 -a 0x60010788 +a 0x60010388 w 0x4ba05e93 -a 0x6001078c +a 0x6001038c w 0xb60ac4cb -a 0x60010790 +a 0x60010390 w 0x9edcb672 -a 0x60010794 +a 0x60010394 w 0x00637780 -a 0x60010798 +a 0x60010398 w 0x860e62d9 -a 0x6001079c +a 0x6001039c w 0x8a983052 -a 0x600107a0 +a 0x600103a0 w 0x35e38f6f -a 0x600107a4 +a 0x600103a4 w 0xd2e8b382 -a 0x600107a8 +a 0x600103a8 w 0x3482b173 -a 0x600107ac +a 0x600103ac w 0x9d76f455 -a 0x600107b0 +a 0x600103b0 w 0x5b623fda -a 0x600107b4 +a 0x600103b4 w 0xb08ab5bf -a 0x600107b8 +a 0x600103b8 w 0x332433a7 -a 0x600107bc +a 0x600103bc w 0x17aced3b -a 0x600107c0 +a 0x600103c0 w 0x00000200 -a 0x600107fc +a 0x600103fc w 0x80000000 -a 0x60010fe0 +a 0x600107e0 r 0xad5d7f58 -a 0x60010fe4 +a 0x600107e4 r 0xc619f73f -a 0x60010fe8 +a 0x600107e8 r 0x5a54de49 -a 0x60010fec +a 0x600107ec r 0x038b0529 -a 0x60010ff0 +a 0x600107f0 r 0x92343513 -a 0x60010ff4 +a 0x600107f4 r 0xea3cf2a9 -a 0x60010ff8 +a 0x600107f8 r 0x5a1b530b -a 0x60010ffc +a 0x600107fc r 0x49393b4e -a 0x60010780 +a 0x60010380 w 0x2319760c -a 0x60010784 +a 0x60010384 w 0xc25e8486 -a 0x60010788 +a 0x60010388 w 0xe2be9c44 -a 0x6001078c +a 0x6001038c w 0x28e4aeaf -a 0x60010790 +a 0x60010390 w 0xae725608 -a 0x60010794 +a 0x60010394 w 0xd394d5f8 -a 0x60010798 +a 0x60010398 w 0xf6768cc7 -a 0x6001079c +a 0x6001039c w 0x7f51d709 -a 0x600107a0 +a 0x600103a0 w 0x4c99a726 -a 0x600107a4 +a 0x600103a4 w 0x2586fbc4 -a 0x600107a8 +a 0x600103a8 w 0xd2f30b37 -a 0x600107ac +a 0x600103ac w 0x8c71f0c5 -a 0x600107b0 +a 0x600103b0 w 0x4acf0b2d -a 0x600107b4 +a 0x600103b4 w 0xd0d8e335 -a 0x600107b8 +a 0x600103b8 w 0x88af1d5f -a 0x600107bc +a 0x600103bc w 0xe69dad36 -a 0x600107c0 +a 0x600103c0 w 0x00000200 -a 0x600107fc +a 0x600103fc w 0x80000000 -a 0x60010fe0 +a 0x600107e0 r 0x105755f3 -a 0x60010fe4 +a 0x600107e4 r 0x1ca8459e -a 0x60010fe8 +a 0x600107e8 r 0x08ffade5 -a 0x60010fec +a 0x600107ec r 0x29a2e390 -a 0x60010ff0 +a 0x600107f0 r 0xc6905543 -a 0x60010ff4 +a 0x600107f4 r 0x5ed0766b -a 0x60010ff8 +a 0x600107f8 r 0x9a63b562 -a 0x60010ffc +a 0x600107fc r 0x95262422 -a 0x60010780 +a 0x60010380 w 0x2a17c8e9 -a 0x60010784 +a 0x60010384 w 0x63931b41 -a 0x60010788 +a 0x60010388 w 0xd191bfc8 -a 0x6001078c +a 0x6001038c w 0x40d7f3fc -a 0x60010790 +a 0x60010390 w 0x60754253 -a 0x60010794 +a 0x60010394 w 0xd5f6ef4c -a 0x60010798 +a 0x60010398 w 0xa49ff89d -a 0x6001079c +a 0x6001039c w 0xb3f9bc39 -a 0x600107a0 +a 0x600103a0 w 0x7ba3ec2e -a 0x600107a4 +a 0x600103a4 w 0xf100cac2 -a 0x600107a8 +a 0x600103a8 w 0x552ac1d3 -a 0x600107ac +a 0x600103ac w 0x657744db -a 0x600107b0 +a 0x600103b0 w 0xfa2402f8 -a 0x600107b4 +a 0x600103b4 w 0x5e2ea772 -a 0x600107b8 +a 0x600103b8 w 0x572c2bf0 -a 0x600107bc +a 0x600103bc w 0x372eb887 -a 0x600107c0 +a 0x600103c0 w 0x00000200 -a 0x600107fc +a 0x600103fc w 0x80000000 -a 0x60010fe0 +a 0x600107e0 r 0x1f335cad -a 0x60010fe4 +a 0x600107e4 r 0x7d8c6b58 -a 0x60010fe8 +a 0x600107e8 r 0xcb265158 -a 0x60010fec +a 0x600107ec r 0xee44b230 -a 0x60010ff0 +a 0x600107f0 r 0x88e5f660 -a 0x60010ff4 +a 0x600107f4 r 0x96ee3bc5 -a 0x60010ff8 +a 0x600107f8 r 0x96cf9939 -a 0x60010ffc +a 0x600107fc r 0x38849fc2 -a 0x60010780 +a 0x60010380 w 0xac465530 -a 0x60010784 +a 0x60010384 w 0x6e6a3d49 -a 0x60010788 +a 0x60010388 w 0xe7f1461f -a 0x6001078c +a 0x6001038c w 0xc6f4b35f -a 0x60010790 +a 0x60010390 w 0xf82a46d6 -a 0x60010794 +a 0x60010394 w 0x440244f5 -a 0x60010798 +a 0x60010398 w 0x6bde0ef1 -a 0x6001079c +a 0x6001039c w 0xb0787487 -a 0x600107a0 +a 0x600103a0 w 0x1a96af96 -a 0x600107a4 +a 0x600103a4 w 0xa55fef07 -a 0x600107a8 +a 0x600103a8 w 0xea97471c -a 0x600107ac +a 0x600103ac w 0x35bad402 -a 0x600107b0 +a 0x600103b0 w 0xb3733250 -a 0x600107b4 +a 0x600103b4 w 0x75028929 -a 0x600107b8 +a 0x600103b8 w 0x230c2b19 -a 0x600107bc +a 0x600103bc w 0x0bfe6ea9 -a 0x600107c0 +a 0x600103c0 w 0x00000200 -a 0x600107fc +a 0x600103fc w 0x80000000 -a 0x60010fe0 +a 0x600107e0 r 0x0b51e243 -a 0x60010fe4 +a 0x600107e4 r 0x37b05a4b -a 0x60010fe8 +a 0x600107e8 r 0x02497784 -a 0x60010fec +a 0x600107ec r 0xaed161d2 -a 0x60010ff0 +a 0x600107f0 r 0x7f6590f6 -a 0x60010ff4 +a 0x600107f4 r 0x479570fd -a 0x60010ff8 +a 0x600107f8 r 0xae0cb755 -a 0x60010ffc +a 0x600107fc r 0xee161bc2 -a 0x60010780 +a 0x60010380 w 0xec8225d7 -a 0x60010784 +a 0x60010384 w 0x9193267a -a 0x60010788 +a 0x60010388 w 0xc3f24d94 -a 0x6001078c +a 0x6001038c w 0xb295566e -a 0x60010790 +a 0x60010390 w 0x034a0bc0 -a 0x60010794 +a 0x60010394 w 0x1a4d2e6b -a 0x60010798 +a 0x60010398 w 0xa6ed70c9 -a 0x6001079c +a 0x6001039c w 0x4d573f76 -a 0x600107a0 +a 0x600103a0 w 0x45b0e216 -a 0x600107a4 +a 0x600103a4 w 0xdb750cbb -a 0x600107a8 +a 0x600103a8 w 0x4138b929 -a 0x600107ac +a 0x600103ac w 0xd67d1bbd -a 0x600107b0 +a 0x600103b0 w 0x24fdf316 -a 0x600107b4 +a 0x600103b4 w 0x0650c084 -a 0x600107b8 +a 0x600103b8 w 0xf95e6e9c -a 0x600107bc +a 0x600103bc w 0x877e2642 -a 0x600107c0 +a 0x600103c0 w 0x00000200 -a 0x600107fc +a 0x600103fc w 0x80000000 -a 0x60010fe0 +a 0x600107e0 r 0x6d572f08 -a 0x60010fe4 +a 0x600107e4 r 0xe0c7b6dd -a 0x60010fe8 +a 0x600107e8 r 0x88674260 -a 0x60010fec +a 0x600107ec r 0xa5ae48a8 -a 0x60010ff0 +a 0x600107f0 r 0xa7112033 -a 0x60010ff4 +a 0x600107f4 r 0xc555cde2 -a 0x60010ff8 +a 0x600107f8 r 0x51c0db63 -a 0x60010ffc +a 0x600107fc r 0x60f9e31b -a 0x60010780 +a 0x60010380 w 0x387dc590 -a 0x60010784 +a 0x60010384 w 0x2966f6a3 -a 0x60010788 +a 0x60010388 w 0xadd14662 -a 0x6001078c +a 0x6001038c w 0x0bc2175e -a 0x60010790 +a 0x60010390 w 0x3d2556a0 -a 0x60010794 +a 0x60010394 w 0x335c30a8 -a 0x60010798 +a 0x60010398 w 0x50e7e900 -a 0x6001079c +a 0x6001039c w 0xb1b72206 -a 0x600107a0 +a 0x600103a0 w 0xc6f526b0 -a 0x600107a4 +a 0x600103a4 w 0x15a4177f -a 0x600107a8 +a 0x600103a8 w 0xf0d718a4 -a 0x600107ac +a 0x600103ac w 0x48879677 -a 0x600107b0 +a 0x600103b0 w 0x8934d6c4 -a 0x600107b4 +a 0x600103b4 w 0x50ab7c39 -a 0x600107b8 +a 0x600103b8 w 0x3360bbd7 -a 0x600107bc +a 0x600103bc w 0xefdf5963 -a 0x600107c0 +a 0x600103c0 w 0x00000200 -a 0x600107fc +a 0x600103fc w 0x80000000 -a 0x60010fe0 +a 0x600107e0 r 0x24eb65ee -a 0x60010fe4 +a 0x600107e4 r 0x309707c9 -a 0x60010fe8 +a 0x600107e8 r 0xaf5d19d2 -a 0x60010fec +a 0x600107ec r 0xd4e713d3 -a 0x60010ff0 +a 0x600107f0 r 0x5d160f7a -a 0x60010ff4 +a 0x600107f4 r 0x400e3734 -a 0x60010ff8 +a 0x600107f8 r 0xb6a8cf6c -a 0x60010ffc +a 0x600107fc r 0x3a012531 -a 0x60010780 +a 0x60010380 w 0x2a22cd0b -a 0x60010784 +a 0x60010384 w 0xf570eb78 -a 0x60010788 +a 0x60010388 w 0xd3a5b873 -a 0x6001078c +a 0x6001038c w 0x53d7f89b -a 0x60010790 +a 0x60010390 w 0xebedc242 -a 0x60010794 +a 0x60010394 w 0x59a1ee9a -a 0x60010798 +a 0x60010398 w 0xcea792f4 -a 0x6001079c +a 0x6001039c w 0xedf99c9c -a 0x600107a0 +a 0x600103a0 w 0x47ab7368 -a 0x600107a4 +a 0x600103a4 w 0xa0eddacc -a 0x600107a8 +a 0x600103a8 w 0xe218002f -a 0x600107ac +a 0x600103ac w 0x1498319a -a 0x600107b0 +a 0x600103b0 w 0xb1f10e58 -a 0x600107b4 +a 0x600103b4 w 0x8d03ecb0 -a 0x600107b8 +a 0x600103b8 w 0x4408ab12 -a 0x600107bc +a 0x600103bc w 0xcabcc637 -a 0x600107c0 +a 0x600103c0 w 0x00000200 -a 0x600107fc +a 0x600103fc w 0x80000000 -a 0x60010fe0 +a 0x600107e0 r 0x5951566a -a 0x60010fe4 +a 0x600107e4 r 0xb8a4b430 -a 0x60010fe8 +a 0x600107e8 r 0x9fe9980d -a 0x60010fec +a 0x600107ec r 0x80069d04 -a 0x60010ff0 +a 0x600107f0 r 0x093d866f -a 0x60010ff4 +a 0x600107f4 r 0x7af5e3f6 -a 0x60010ff8 +a 0x600107f8 r 0xcc432473 -a 0x60010ffc +a 0x600107fc r 0x090f1978 A X diff --git a/wrapper/src/wrapper_secworks_sha256.sv b/wrapper/src/wrapper_secworks_sha256.sv index b6fc0ed73e65e931496c72566b2da877d4f4d570..70d5c7f9b7ded8530f80f52a7930c1c190312e14 100644 --- a/wrapper/src/wrapper_secworks_sha256.sv +++ b/wrapper/src/wrapper_secworks_sha256.sv @@ -16,8 +16,8 @@ module wrapper_secworks_sha256 #( parameter CFGSCHEMEWIDTH=2, parameter OUTPACKETWIDTH=256 ) ( - input logic HCLK, // Clock - input logic HRESETn, // Reset + input logic HCLK, // Clock + input logic HRESETn, // Reset // AHB connection to Initiator input logic HSELS, @@ -32,8 +32,6 @@ module wrapper_secworks_sha256 #( output logic HRESPS, output logic [31:0] HRDATAS, - //TODO: Add APB Interface - // Input Data Request Signal to DMAC output logic in_data_req, @@ -54,7 +52,7 @@ module wrapper_secworks_sha256 #( localparam [AHBADDRWIDTH-1:0] OUTPORTADDR = 'h400; localparam OUTPORTAHBADDRWIDTH = AHBADDRWIDTH - 2; - localparam OUTPACKETBYTEWIDTH = $clog2(OUTPACKETWIDTH/8); // Number of Bytes in Packet + localparam OUTPACKETBYTEWIDTH = $clog2(OUTPACKETWIDTH/8); // Number of Bytes in Packet localparam OUTPACKETSPACEWIDTH = OUTPORTAHBADDRWIDTH-OUTPACKETBYTEWIDTH; // Number of Bits to represent all Packets in Address Space // Control and Status Register Parameters @@ -171,6 +169,9 @@ module wrapper_secworks_sha256 #( logic in_packet_valid; logic in_packet_ready; + // DMA + logic in_dma_req_act; + // Packet Constructor Instantiation wrapper_ahb_packet_constructor #( INPORTAHBADDRWIDTH, @@ -199,7 +200,7 @@ module wrapper_secworks_sha256 #( .packet_data_ready (in_packet_ready), // Input Data Request - .data_req (in_data_req) + .data_req (in_dma_req_act) ); //---------------------------------------------------------- @@ -234,7 +235,8 @@ module wrapper_secworks_sha256 #( // Relative Read Address for Start of Current Block logic [OUTPORTAHBADDRWIDTH-1:0] block_read_addr; - + // DMA Request Line + logic out_dma_req_act; // Packet Deconstructor Instantiation wrapper_ahb_packet_deconstructor #( @@ -265,10 +267,10 @@ module wrapper_secworks_sha256 #( .packet_data_ready (out_hash_ready), // Input Data Request - .data_req (out_data_req), + .data_req (out_dma_req_act), // Read Address Interface - .block_read_addr (block_read_addr) + .block_read_addr (block_read_addr) ); //---------------------------------------------------------- @@ -305,12 +307,12 @@ module wrapper_secworks_sha256 #( .PCLKEN (1'b1), // APB clock enable signal .HSEL (hsel2), // Device select - .HADDR, (HADDRS[CSRADDRWIDTH-1:0]) // Address + .HADDR (HADDRS[CSRADDRWIDTH-1:0]), // Address .HTRANS (HTRANSS), // Transfer control .HSIZE (HSIZES), // Transfer size .HPROT (4'b1111), // Protection control .HWRITE (HWRITES), // Write control - .HREADY, (HREADYS) // Transfer phase done + .HREADY (HREADYS), // Transfer phase done .HWDATA (HWDATAS), // Write data .HREADYOUT (hreadyout2), // Device ready @@ -361,21 +363,24 @@ module wrapper_secworks_sha256 #( .rdata (csr_reg_rdata) ); - // Example Register Block - cmsdk_apb3_eg_slave_reg #( - CSRADDRWIDTH - ) u_csr_block ( - .pclk (HCLK), - .presetn (HRESETn), - - // Register interface - .addr (csr_reg_addr), - .read_en (csr_reg_read_en), - .write_en (csr_reg_write_en), - .wdata (csr_reg_wdata), - .ecorevnum (4'd0), - .rdata (csr_reg_rdata) - ); + logic ctrl_reg_write_en, ctrl_reg_read_en; + assign ctrl_reg_write_en = csr_reg_write_en & (csr_reg_addr < 10'h100); + assign ctrl_reg_read_en = csr_reg_read_en & (csr_reg_addr < 10'h100); + // // Example Register Block + // cmsdk_apb3_eg_slave_reg #( + // CSRADDRWIDTH + // ) u_csr_block ( + // .pclk (HCLK), + // .presetn (HRESETn), + + // // Register interface + // .addr (csr_reg_addr), + // .read_en (csr_reg_read_en), + // .write_en (csr_reg_write_en), + // .wdata (csr_reg_wdata), + // .ecorevnum (4'd0), + // .rdata (csr_reg_rdata) + // ); //---------------------------------------------------------- // Default AHB Target Logic @@ -405,7 +410,39 @@ module wrapper_secworks_sha256 #( // Wrapper DMA Data Request Generation //********************************************************** - // TODO: Write up data request logic through registers + wrapper_req_ctrl_reg #( + CSRADDRWIDTH + ) u_wrapper_req_ctrl_reg ( + .hclk (HCLK), + .hresetn (HRESETn), + .addr (csr_reg_addr), + .read_en (ctrl_reg_read_en), + .write_en (ctrl_reg_write_en), + .wdata (csr_reg_wdata), + .rdata (csr_reg_rdata), + + // Data Transfer Request Signaling + .req_act_ch0 (in_dma_req_act), + .req_act_ch1 (out_dma_req_act), + .req_act_ch2 (1'b0), + .req_act_ch3 (1'b0), + .req_act_ch4 (1'b0), + + // DMA Request Output + .drq_ch0 (in_data_req), + .drq_ch1 (out_data_req), + .drq_ch2 (), + .drq_ch3 (), + .drq_ch4 (), + + // Interrupt Request Output + .irq_ch0 (), + .irq_ch1 (), + .irq_ch2 (), + .irq_ch3 (), + .irq_ch4 (), + .irq_merged () + ); //********************************************************** // Accelerator Engine diff --git a/wrapper/stimulus/ahb_input_hash_stim.fri b/wrapper/stimulus/ahb_input_hash_stim.fri index 5a70a66ddf9fe347d16158598d9a7a650c9e5182..a34d700c550156ba611e7d1773f8cddbf61c1392 100644 --- a/wrapper/stimulus/ahb_input_hash_stim.fri +++ b/wrapper/stimulus/ahb_input_hash_stim.fri @@ -9,264 +9,265 @@ ;# Copyright 2023, SoC Labs (www.soclabs.org) ;#----------------------------------------------------------------------------- ;Transaction Address Data Size -W 0x60010780 0x94748770 word -W 0x60010784 0x0e3109cc word -W 0x60010788 0xc4411b41 word -W 0x6001078c 0x5349fe99 word -W 0x60010790 0xbc3bdfc1 word -W 0x60010794 0xdeb5cb2a word -W 0x60010798 0xa0052ca2 word -W 0x6001079c 0x1761b000 word -W 0x600107a0 0x1b5affff word -W 0x600107a4 0xeab53b7e word -W 0x600107a8 0x81152f06 word -W 0x600107ac 0x7d60ab33 word -W 0x600107b0 0x1ce3c906 word -W 0x600107b4 0x707476fe word -W 0x600107b8 0x923737f4 word -W 0x600107bc 0x695b2443 word -W 0x600107c0 0x00000200 word -W 0x600107fc 0x80000000 word -R 0x60010fe0 0xe06f1bef word -R 0x60010fe4 0xf498916a word -R 0x60010fe8 0x4686ebb1 word -R 0x60010fec 0x0dc803e5 word -R 0x60010ff0 0x960ea091 word -R 0x60010ff4 0xeb558be4 word -R 0x60010ff8 0xe14c46de word -R 0x60010ffc 0xe1711626 word -W 0x60010780 0xf7079da3 word -W 0x60010784 0xa0c46731 word -W 0x60010788 0xc51f9e09 word -W 0x6001078c 0x8d8993e6 word -W 0x60010790 0xfd33039d word -W 0x60010794 0xe8675d4a word -W 0x60010798 0xc0e513a1 word -W 0x6001079c 0x858c0663 word -W 0x600107a0 0xa1fb693e word -W 0x600107a4 0xd5ebd6d4 word -W 0x600107a8 0x26f7441f word -W 0x600107ac 0x907554b5 word -W 0x600107b0 0x9db705fd word -W 0x600107b4 0x47a57bf5 word -W 0x600107b8 0xfe2518c8 word -W 0x600107bc 0x4c5b82c1 word -W 0x600107c0 0x00000200 word -W 0x600107fc 0x80000000 word -R 0x60010fe0 0xd065f05e word -R 0x60010fe4 0x1623b2c9 word -R 0x60010fe8 0x9d3c0a90 word -R 0x60010fec 0xce34de30 word -R 0x60010ff0 0x72fc05c5 word -R 0x60010ff4 0xcf65fdbb word -R 0x60010ff8 0xef598a6e word -R 0x60010ffc 0x58d6d30f word -W 0x60010780 0x28b3253a word -W 0x60010784 0x96dbf9e5 word -W 0x60010788 0x55e5ab02 word -W 0x6001078c 0x6bbbc74a word -W 0x60010790 0xed5fbca6 word -W 0x60010794 0x73ece6c4 word -W 0x60010798 0x832fa959 word -W 0x6001079c 0x7a0d31bf word -W 0x600107a0 0xaa1320aa word -W 0x600107a4 0x9fcb8eb3 word -W 0x600107a8 0x6bf549d9 word -W 0x600107ac 0x049bd3de word -W 0x600107b0 0xdd09fb8d word -W 0x600107b4 0x1285908a word -W 0x600107b8 0x3eb37ea8 word -W 0x600107bc 0x68eb3a8c word -W 0x600107c0 0x00000200 word -W 0x600107fc 0x80000000 word -R 0x60010fe0 0xe4e3afb2 word -R 0x60010fe4 0xa3be45c9 word -R 0x60010fe8 0xb43f0fa3 word -R 0x60010fec 0x56fcb65d word -R 0x60010ff0 0xbbf2982b word -R 0x60010ff4 0x15cd68c7 word -R 0x60010ff8 0xcc9f9269 word -R 0x60010ffc 0xed646faf word -W 0x60010780 0xbfcceaa6 word -W 0x60010784 0xa2264db5 word -W 0x60010788 0x4ba05e93 word -W 0x6001078c 0xb60ac4cb word -W 0x60010790 0x9edcb672 word -W 0x60010794 0x00637780 word -W 0x60010798 0x860e62d9 word -W 0x6001079c 0x8a983052 word -W 0x600107a0 0x35e38f6f word -W 0x600107a4 0xd2e8b382 word -W 0x600107a8 0x3482b173 word -W 0x600107ac 0x9d76f455 word -W 0x600107b0 0x5b623fda word -W 0x600107b4 0xb08ab5bf word -W 0x600107b8 0x332433a7 word -W 0x600107bc 0x17aced3b word -W 0x600107c0 0x00000200 word -W 0x600107fc 0x80000000 word -R 0x60010fe0 0xad5d7f58 word -R 0x60010fe4 0xc619f73f word -R 0x60010fe8 0x5a54de49 word -R 0x60010fec 0x038b0529 word -R 0x60010ff0 0x92343513 word -R 0x60010ff4 0xea3cf2a9 word -R 0x60010ff8 0x5a1b530b word -R 0x60010ffc 0x49393b4e word -W 0x60010780 0x2319760c word -W 0x60010784 0xc25e8486 word -W 0x60010788 0xe2be9c44 word -W 0x6001078c 0x28e4aeaf word -W 0x60010790 0xae725608 word -W 0x60010794 0xd394d5f8 word -W 0x60010798 0xf6768cc7 word -W 0x6001079c 0x7f51d709 word -W 0x600107a0 0x4c99a726 word -W 0x600107a4 0x2586fbc4 word -W 0x600107a8 0xd2f30b37 word -W 0x600107ac 0x8c71f0c5 word -W 0x600107b0 0x4acf0b2d word -W 0x600107b4 0xd0d8e335 word -W 0x600107b8 0x88af1d5f word -W 0x600107bc 0xe69dad36 word -W 0x600107c0 0x00000200 word -W 0x600107fc 0x80000000 word -R 0x60010fe0 0x105755f3 word -R 0x60010fe4 0x1ca8459e word -R 0x60010fe8 0x08ffade5 word -R 0x60010fec 0x29a2e390 word -R 0x60010ff0 0xc6905543 word -R 0x60010ff4 0x5ed0766b word -R 0x60010ff8 0x9a63b562 word -R 0x60010ffc 0x95262422 word -W 0x60010780 0x2a17c8e9 word -W 0x60010784 0x63931b41 word -W 0x60010788 0xd191bfc8 word -W 0x6001078c 0x40d7f3fc word -W 0x60010790 0x60754253 word -W 0x60010794 0xd5f6ef4c word -W 0x60010798 0xa49ff89d word -W 0x6001079c 0xb3f9bc39 word -W 0x600107a0 0x7ba3ec2e word -W 0x600107a4 0xf100cac2 word -W 0x600107a8 0x552ac1d3 word -W 0x600107ac 0x657744db word -W 0x600107b0 0xfa2402f8 word -W 0x600107b4 0x5e2ea772 word -W 0x600107b8 0x572c2bf0 word -W 0x600107bc 0x372eb887 word -W 0x600107c0 0x00000200 word -W 0x600107fc 0x80000000 word -R 0x60010fe0 0x1f335cad word -R 0x60010fe4 0x7d8c6b58 word -R 0x60010fe8 0xcb265158 word -R 0x60010fec 0xee44b230 word -R 0x60010ff0 0x88e5f660 word -R 0x60010ff4 0x96ee3bc5 word -R 0x60010ff8 0x96cf9939 word -R 0x60010ffc 0x38849fc2 word -W 0x60010780 0xac465530 word -W 0x60010784 0x6e6a3d49 word -W 0x60010788 0xe7f1461f word -W 0x6001078c 0xc6f4b35f word -W 0x60010790 0xf82a46d6 word -W 0x60010794 0x440244f5 word -W 0x60010798 0x6bde0ef1 word -W 0x6001079c 0xb0787487 word -W 0x600107a0 0x1a96af96 word -W 0x600107a4 0xa55fef07 word -W 0x600107a8 0xea97471c word -W 0x600107ac 0x35bad402 word -W 0x600107b0 0xb3733250 word -W 0x600107b4 0x75028929 word -W 0x600107b8 0x230c2b19 word -W 0x600107bc 0x0bfe6ea9 word -W 0x600107c0 0x00000200 word -W 0x600107fc 0x80000000 word -R 0x60010fe0 0x0b51e243 word -R 0x60010fe4 0x37b05a4b word -R 0x60010fe8 0x02497784 word -R 0x60010fec 0xaed161d2 word -R 0x60010ff0 0x7f6590f6 word -R 0x60010ff4 0x479570fd word -R 0x60010ff8 0xae0cb755 word -R 0x60010ffc 0xee161bc2 word -W 0x60010780 0xec8225d7 word -W 0x60010784 0x9193267a word -W 0x60010788 0xc3f24d94 word -W 0x6001078c 0xb295566e word -W 0x60010790 0x034a0bc0 word -W 0x60010794 0x1a4d2e6b word -W 0x60010798 0xa6ed70c9 word -W 0x6001079c 0x4d573f76 word -W 0x600107a0 0x45b0e216 word -W 0x600107a4 0xdb750cbb word -W 0x600107a8 0x4138b929 word -W 0x600107ac 0xd67d1bbd word -W 0x600107b0 0x24fdf316 word -W 0x600107b4 0x0650c084 word -W 0x600107b8 0xf95e6e9c word -W 0x600107bc 0x877e2642 word -W 0x600107c0 0x00000200 word -W 0x600107fc 0x80000000 word -R 0x60010fe0 0x6d572f08 word -R 0x60010fe4 0xe0c7b6dd word -R 0x60010fe8 0x88674260 word -R 0x60010fec 0xa5ae48a8 word -R 0x60010ff0 0xa7112033 word -R 0x60010ff4 0xc555cde2 word -R 0x60010ff8 0x51c0db63 word -R 0x60010ffc 0x60f9e31b word -W 0x60010780 0x387dc590 word -W 0x60010784 0x2966f6a3 word -W 0x60010788 0xadd14662 word -W 0x6001078c 0x0bc2175e word -W 0x60010790 0x3d2556a0 word -W 0x60010794 0x335c30a8 word -W 0x60010798 0x50e7e900 word -W 0x6001079c 0xb1b72206 word -W 0x600107a0 0xc6f526b0 word -W 0x600107a4 0x15a4177f word -W 0x600107a8 0xf0d718a4 word -W 0x600107ac 0x48879677 word -W 0x600107b0 0x8934d6c4 word -W 0x600107b4 0x50ab7c39 word -W 0x600107b8 0x3360bbd7 word -W 0x600107bc 0xefdf5963 word -W 0x600107c0 0x00000200 word -W 0x600107fc 0x80000000 word -R 0x60010fe0 0x24eb65ee word -R 0x60010fe4 0x309707c9 word -R 0x60010fe8 0xaf5d19d2 word -R 0x60010fec 0xd4e713d3 word -R 0x60010ff0 0x5d160f7a word -R 0x60010ff4 0x400e3734 word -R 0x60010ff8 0xb6a8cf6c word -R 0x60010ffc 0x3a012531 word -W 0x60010780 0x2a22cd0b word -W 0x60010784 0xf570eb78 word -W 0x60010788 0xd3a5b873 word -W 0x6001078c 0x53d7f89b word -W 0x60010790 0xebedc242 word -W 0x60010794 0x59a1ee9a word -W 0x60010798 0xcea792f4 word -W 0x6001079c 0xedf99c9c word -W 0x600107a0 0x47ab7368 word -W 0x600107a4 0xa0eddacc word -W 0x600107a8 0xe218002f word -W 0x600107ac 0x1498319a word -W 0x600107b0 0xb1f10e58 word -W 0x600107b4 0x8d03ecb0 word -W 0x600107b8 0x4408ab12 word -W 0x600107bc 0xcabcc637 word -W 0x600107c0 0x00000200 word -W 0x600107fc 0x80000000 word -R 0x60010fe0 0x5951566a word -R 0x60010fe4 0xb8a4b430 word -R 0x60010fe8 0x9fe9980d word -R 0x60010fec 0x80069d04 word -R 0x60010ff0 0x093d866f word -R 0x60010ff4 0x7af5e3f6 word -R 0x60010ff8 0xcc432473 word -R 0x60010ffc 0x090f1978 word +W 0x60010380 0x94748770 word +W 0x60010384 0x0e3109cc word +W 0x60010388 0xc4411b41 word +W 0x6001038c 0x5349fe99 word +W 0x60010390 0xbc3bdfc1 word +W 0x60010394 0xdeb5cb2a word +W 0x60010398 0xa0052ca2 word +W 0x6001039c 0x1761b000 word +W 0x600103a0 0x1b5affff word +W 0x600103a4 0xeab53b7e word +W 0x600103a8 0x81152f06 word +W 0x600103ac 0x7d60ab33 word +W 0x600103b0 0x1ce3c906 word +W 0x600103b4 0x707476fe word +W 0x600103b8 0x923737f4 word +W 0x600103bc 0x695b2443 word +W 0x600103c0 0x00000200 word +W 0x600103fc 0x80000000 word +R 0x60010810 0x00000000 word +R 0x600107e0 0xe06f1bef word +R 0x600107e4 0xf498916a word +R 0x600107e8 0x4686ebb1 word +R 0x600107ec 0x0dc803e5 word +R 0x600107f0 0x960ea091 word +R 0x600107f4 0xeb558be4 word +R 0x600107f8 0xe14c46de word +R 0x600107fc 0xe1711626 word +W 0x60010380 0xf7079da3 word +W 0x60010384 0xa0c46731 word +W 0x60010388 0xc51f9e09 word +W 0x6001038c 0x8d8993e6 word +W 0x60010390 0xfd33039d word +W 0x60010394 0xe8675d4a word +W 0x60010398 0xc0e513a1 word +W 0x6001039c 0x858c0663 word +W 0x600103a0 0xa1fb693e word +W 0x600103a4 0xd5ebd6d4 word +W 0x600103a8 0x26f7441f word +W 0x600103ac 0x907554b5 word +W 0x600103b0 0x9db705fd word +W 0x600103b4 0x47a57bf5 word +W 0x600103b8 0xfe2518c8 word +W 0x600103bc 0x4c5b82c1 word +W 0x600103c0 0x00000200 word +W 0x600103fc 0x80000000 word +R 0x600107e0 0xd065f05e word +R 0x600107e4 0x1623b2c9 word +R 0x600107e8 0x9d3c0a90 word +R 0x600107ec 0xce34de30 word +R 0x600107f0 0x72fc05c5 word +R 0x600107f4 0xcf65fdbb word +R 0x600107f8 0xef598a6e word +R 0x600107fc 0x58d6d30f word +W 0x60010380 0x28b3253a word +W 0x60010384 0x96dbf9e5 word +W 0x60010388 0x55e5ab02 word +W 0x6001038c 0x6bbbc74a word +W 0x60010390 0xed5fbca6 word +W 0x60010394 0x73ece6c4 word +W 0x60010398 0x832fa959 word +W 0x6001039c 0x7a0d31bf word +W 0x600103a0 0xaa1320aa word +W 0x600103a4 0x9fcb8eb3 word +W 0x600103a8 0x6bf549d9 word +W 0x600103ac 0x049bd3de word +W 0x600103b0 0xdd09fb8d word +W 0x600103b4 0x1285908a word +W 0x600103b8 0x3eb37ea8 word +W 0x600103bc 0x68eb3a8c word +W 0x600103c0 0x00000200 word +W 0x600103fc 0x80000000 word +R 0x600107e0 0xe4e3afb2 word +R 0x600107e4 0xa3be45c9 word +R 0x600107e8 0xb43f0fa3 word +R 0x600107ec 0x56fcb65d word +R 0x600107f0 0xbbf2982b word +R 0x600107f4 0x15cd68c7 word +R 0x600107f8 0xcc9f9269 word +R 0x600107fc 0xed646faf word +W 0x60010380 0xbfcceaa6 word +W 0x60010384 0xa2264db5 word +W 0x60010388 0x4ba05e93 word +W 0x6001038c 0xb60ac4cb word +W 0x60010390 0x9edcb672 word +W 0x60010394 0x00637780 word +W 0x60010398 0x860e62d9 word +W 0x6001039c 0x8a983052 word +W 0x600103a0 0x35e38f6f word +W 0x600103a4 0xd2e8b382 word +W 0x600103a8 0x3482b173 word +W 0x600103ac 0x9d76f455 word +W 0x600103b0 0x5b623fda word +W 0x600103b4 0xb08ab5bf word +W 0x600103b8 0x332433a7 word +W 0x600103bc 0x17aced3b word +W 0x600103c0 0x00000200 word +W 0x600103fc 0x80000000 word +R 0x600107e0 0xad5d7f58 word +R 0x600107e4 0xc619f73f word +R 0x600107e8 0x5a54de49 word +R 0x600107ec 0x038b0529 word +R 0x600107f0 0x92343513 word +R 0x600107f4 0xea3cf2a9 word +R 0x600107f8 0x5a1b530b word +R 0x600107fc 0x49393b4e word +W 0x60010380 0x2319760c word +W 0x60010384 0xc25e8486 word +W 0x60010388 0xe2be9c44 word +W 0x6001038c 0x28e4aeaf word +W 0x60010390 0xae725608 word +W 0x60010394 0xd394d5f8 word +W 0x60010398 0xf6768cc7 word +W 0x6001039c 0x7f51d709 word +W 0x600103a0 0x4c99a726 word +W 0x600103a4 0x2586fbc4 word +W 0x600103a8 0xd2f30b37 word +W 0x600103ac 0x8c71f0c5 word +W 0x600103b0 0x4acf0b2d word +W 0x600103b4 0xd0d8e335 word +W 0x600103b8 0x88af1d5f word +W 0x600103bc 0xe69dad36 word +W 0x600103c0 0x00000200 word +W 0x600103fc 0x80000000 word +R 0x600107e0 0x105755f3 word +R 0x600107e4 0x1ca8459e word +R 0x600107e8 0x08ffade5 word +R 0x600107ec 0x29a2e390 word +R 0x600107f0 0xc6905543 word +R 0x600107f4 0x5ed0766b word +R 0x600107f8 0x9a63b562 word +R 0x600107fc 0x95262422 word +W 0x60010380 0x2a17c8e9 word +W 0x60010384 0x63931b41 word +W 0x60010388 0xd191bfc8 word +W 0x6001038c 0x40d7f3fc word +W 0x60010390 0x60754253 word +W 0x60010394 0xd5f6ef4c word +W 0x60010398 0xa49ff89d word +W 0x6001039c 0xb3f9bc39 word +W 0x600103a0 0x7ba3ec2e word +W 0x600103a4 0xf100cac2 word +W 0x600103a8 0x552ac1d3 word +W 0x600103ac 0x657744db word +W 0x600103b0 0xfa2402f8 word +W 0x600103b4 0x5e2ea772 word +W 0x600103b8 0x572c2bf0 word +W 0x600103bc 0x372eb887 word +W 0x600103c0 0x00000200 word +W 0x600103fc 0x80000000 word +R 0x600107e0 0x1f335cad word +R 0x600107e4 0x7d8c6b58 word +R 0x600107e8 0xcb265158 word +R 0x600107ec 0xee44b230 word +R 0x600107f0 0x88e5f660 word +R 0x600107f4 0x96ee3bc5 word +R 0x600107f8 0x96cf9939 word +R 0x600107fc 0x38849fc2 word +W 0x60010380 0xac465530 word +W 0x60010384 0x6e6a3d49 word +W 0x60010388 0xe7f1461f word +W 0x6001038c 0xc6f4b35f word +W 0x60010390 0xf82a46d6 word +W 0x60010394 0x440244f5 word +W 0x60010398 0x6bde0ef1 word +W 0x6001039c 0xb0787487 word +W 0x600103a0 0x1a96af96 word +W 0x600103a4 0xa55fef07 word +W 0x600103a8 0xea97471c word +W 0x600103ac 0x35bad402 word +W 0x600103b0 0xb3733250 word +W 0x600103b4 0x75028929 word +W 0x600103b8 0x230c2b19 word +W 0x600103bc 0x0bfe6ea9 word +W 0x600103c0 0x00000200 word +W 0x600103fc 0x80000000 word +R 0x600107e0 0x0b51e243 word +R 0x600107e4 0x37b05a4b word +R 0x600107e8 0x02497784 word +R 0x600107ec 0xaed161d2 word +R 0x600107f0 0x7f6590f6 word +R 0x600107f4 0x479570fd word +R 0x600107f8 0xae0cb755 word +R 0x600107fc 0xee161bc2 word +W 0x60010380 0xec8225d7 word +W 0x60010384 0x9193267a word +W 0x60010388 0xc3f24d94 word +W 0x6001038c 0xb295566e word +W 0x60010390 0x034a0bc0 word +W 0x60010394 0x1a4d2e6b word +W 0x60010398 0xa6ed70c9 word +W 0x6001039c 0x4d573f76 word +W 0x600103a0 0x45b0e216 word +W 0x600103a4 0xdb750cbb word +W 0x600103a8 0x4138b929 word +W 0x600103ac 0xd67d1bbd word +W 0x600103b0 0x24fdf316 word +W 0x600103b4 0x0650c084 word +W 0x600103b8 0xf95e6e9c word +W 0x600103bc 0x877e2642 word +W 0x600103c0 0x00000200 word +W 0x600103fc 0x80000000 word +R 0x600107e0 0x6d572f08 word +R 0x600107e4 0xe0c7b6dd word +R 0x600107e8 0x88674260 word +R 0x600107ec 0xa5ae48a8 word +R 0x600107f0 0xa7112033 word +R 0x600107f4 0xc555cde2 word +R 0x600107f8 0x51c0db63 word +R 0x600107fc 0x60f9e31b word +W 0x60010380 0x387dc590 word +W 0x60010384 0x2966f6a3 word +W 0x60010388 0xadd14662 word +W 0x6001038c 0x0bc2175e word +W 0x60010390 0x3d2556a0 word +W 0x60010394 0x335c30a8 word +W 0x60010398 0x50e7e900 word +W 0x6001039c 0xb1b72206 word +W 0x600103a0 0xc6f526b0 word +W 0x600103a4 0x15a4177f word +W 0x600103a8 0xf0d718a4 word +W 0x600103ac 0x48879677 word +W 0x600103b0 0x8934d6c4 word +W 0x600103b4 0x50ab7c39 word +W 0x600103b8 0x3360bbd7 word +W 0x600103bc 0xefdf5963 word +W 0x600103c0 0x00000200 word +W 0x600103fc 0x80000000 word +R 0x600107e0 0x24eb65ee word +R 0x600107e4 0x309707c9 word +R 0x600107e8 0xaf5d19d2 word +R 0x600107ec 0xd4e713d3 word +R 0x600107f0 0x5d160f7a word +R 0x600107f4 0x400e3734 word +R 0x600107f8 0xb6a8cf6c word +R 0x600107fc 0x3a012531 word +W 0x60010380 0x2a22cd0b word +W 0x60010384 0xf570eb78 word +W 0x60010388 0xd3a5b873 word +W 0x6001038c 0x53d7f89b word +W 0x60010390 0xebedc242 word +W 0x60010394 0x59a1ee9a word +W 0x60010398 0xcea792f4 word +W 0x6001039c 0xedf99c9c word +W 0x600103a0 0x47ab7368 word +W 0x600103a4 0xa0eddacc word +W 0x600103a8 0xe218002f word +W 0x600103ac 0x1498319a word +W 0x600103b0 0xb1f10e58 word +W 0x600103b4 0x8d03ecb0 word +W 0x600103b8 0x4408ab12 word +W 0x600103bc 0xcabcc637 word +W 0x600103c0 0x00000200 word +W 0x600103fc 0x80000000 word +R 0x600107e0 0x5951566a word +R 0x600107e4 0xb8a4b430 word +R 0x600107e8 0x9fe9980d word +R 0x600107ec 0x80069d04 word +R 0x600107f0 0x093d866f word +R 0x600107f4 0x7af5e3f6 word +R 0x600107f8 0xcc432473 word +R 0x600107fc 0x090f1978 word Q \ No newline at end of file diff --git a/wrapper/stimulus/ahb_input_hash_stim.m2d b/wrapper/stimulus/ahb_input_hash_stim.m2d index 0a4fb32651e09fdf586dbc892767f113046726fa..bd56970de251b776173764ea640dcbe5435e707d 100644 --- a/wrapper/stimulus/ahb_input_hash_stim.m2d +++ b/wrapper/stimulus/ahb_input_hash_stim.m2d @@ -1,1458 +1,1465 @@ 0044000c -60010780 +60010380 00000000 94748770 00440001 -60010784 +60010384 0e3109cc 00000000 00440001 -60010788 +60010388 00000000 c4411b41 00440001 -6001078c +6001038c 5349fe99 00000000 00440001 -60010790 +60010390 00000000 bc3bdfc1 00440001 -60010794 +60010394 deb5cb2a 00000000 00440001 -60010798 +60010398 00000000 a0052ca2 00440001 -6001079c +6001039c 1761b000 00000000 00440001 -600107a0 +600103a0 00000000 1b5affff 00440001 -600107a4 +600103a4 eab53b7e 00000000 00440001 -600107a8 +600103a8 00000000 81152f06 00440001 -600107ac +600103ac 7d60ab33 00000000 00440001 -600107b0 +600103b0 00000000 1ce3c906 00440001 -600107b4 +600103b4 707476fe 00000000 00440001 -600107b8 +600103b8 00000000 923737f4 00440001 -600107bc +600103bc 695b2443 00000000 00440001 -600107c0 +600103c0 00000000 00000200 00440001 -600107fc +600103fc 80000000 00000000 10440001 -60010fe0 +60010810 +00000000 +00000000 +00000000 +FFFFFFFF + +10440001 +600107e0 00000000 e06f1bef 00000000 FFFFFFFF 10440001 -60010fe4 +600107e4 f498916a 00000000 FFFFFFFF 00000000 10440001 -60010fe8 +600107e8 00000000 4686ebb1 00000000 FFFFFFFF 10440001 -60010fec +600107ec 0dc803e5 00000000 FFFFFFFF 00000000 10440001 -60010ff0 +600107f0 00000000 960ea091 00000000 FFFFFFFF 10440001 -60010ff4 +600107f4 eb558be4 00000000 FFFFFFFF 00000000 10440001 -60010ff8 +600107f8 00000000 e14c46de 00000000 FFFFFFFF 10440001 -60010ffc +600107fc e1711626 00000000 FFFFFFFF 00000000 00440001 -60010780 +60010380 00000000 f7079da3 00440001 -60010784 +60010384 a0c46731 00000000 00440001 -60010788 +60010388 00000000 c51f9e09 00440001 -6001078c +6001038c 8d8993e6 00000000 00440001 -60010790 +60010390 00000000 fd33039d 00440001 -60010794 +60010394 e8675d4a 00000000 00440001 -60010798 +60010398 00000000 c0e513a1 00440001 -6001079c +6001039c 858c0663 00000000 00440001 -600107a0 +600103a0 00000000 a1fb693e 00440001 -600107a4 +600103a4 d5ebd6d4 00000000 00440001 -600107a8 +600103a8 00000000 26f7441f 00440001 -600107ac +600103ac 907554b5 00000000 00440001 -600107b0 +600103b0 00000000 9db705fd 00440001 -600107b4 +600103b4 47a57bf5 00000000 00440001 -600107b8 +600103b8 00000000 fe2518c8 00440001 -600107bc +600103bc 4c5b82c1 00000000 00440001 -600107c0 +600103c0 00000000 00000200 00440001 -600107fc +600103fc 80000000 00000000 10440001 -60010fe0 +600107e0 00000000 d065f05e 00000000 FFFFFFFF 10440001 -60010fe4 +600107e4 1623b2c9 00000000 FFFFFFFF 00000000 10440001 -60010fe8 +600107e8 00000000 9d3c0a90 00000000 FFFFFFFF 10440001 -60010fec +600107ec ce34de30 00000000 FFFFFFFF 00000000 10440001 -60010ff0 +600107f0 00000000 72fc05c5 00000000 FFFFFFFF 10440001 -60010ff4 +600107f4 cf65fdbb 00000000 FFFFFFFF 00000000 10440001 -60010ff8 +600107f8 00000000 ef598a6e 00000000 FFFFFFFF 10440001 -60010ffc +600107fc 58d6d30f 00000000 FFFFFFFF 00000000 00440001 -60010780 +60010380 00000000 28b3253a 00440001 -60010784 +60010384 96dbf9e5 00000000 00440001 -60010788 +60010388 00000000 55e5ab02 00440001 -6001078c +6001038c 6bbbc74a 00000000 00440001 -60010790 +60010390 00000000 ed5fbca6 00440001 -60010794 +60010394 73ece6c4 00000000 00440001 -60010798 +60010398 00000000 832fa959 00440001 -6001079c +6001039c 7a0d31bf 00000000 00440001 -600107a0 +600103a0 00000000 aa1320aa 00440001 -600107a4 +600103a4 9fcb8eb3 00000000 00440001 -600107a8 +600103a8 00000000 6bf549d9 00440001 -600107ac +600103ac 049bd3de 00000000 00440001 -600107b0 +600103b0 00000000 dd09fb8d 00440001 -600107b4 +600103b4 1285908a 00000000 00440001 -600107b8 +600103b8 00000000 3eb37ea8 00440001 -600107bc +600103bc 68eb3a8c 00000000 00440001 -600107c0 +600103c0 00000000 00000200 00440001 -600107fc +600103fc 80000000 00000000 10440001 -60010fe0 +600107e0 00000000 e4e3afb2 00000000 FFFFFFFF 10440001 -60010fe4 +600107e4 a3be45c9 00000000 FFFFFFFF 00000000 10440001 -60010fe8 +600107e8 00000000 b43f0fa3 00000000 FFFFFFFF 10440001 -60010fec +600107ec 56fcb65d 00000000 FFFFFFFF 00000000 10440001 -60010ff0 +600107f0 00000000 bbf2982b 00000000 FFFFFFFF 10440001 -60010ff4 +600107f4 15cd68c7 00000000 FFFFFFFF 00000000 10440001 -60010ff8 +600107f8 00000000 cc9f9269 00000000 FFFFFFFF 10440001 -60010ffc +600107fc ed646faf 00000000 FFFFFFFF 00000000 00440001 -60010780 +60010380 00000000 bfcceaa6 00440001 -60010784 +60010384 a2264db5 00000000 00440001 -60010788 +60010388 00000000 4ba05e93 00440001 -6001078c +6001038c b60ac4cb 00000000 00440001 -60010790 +60010390 00000000 9edcb672 00440001 -60010794 +60010394 00637780 00000000 00440001 -60010798 +60010398 00000000 860e62d9 00440001 -6001079c +6001039c 8a983052 00000000 00440001 -600107a0 +600103a0 00000000 35e38f6f 00440001 -600107a4 +600103a4 d2e8b382 00000000 00440001 -600107a8 +600103a8 00000000 3482b173 00440001 -600107ac +600103ac 9d76f455 00000000 00440001 -600107b0 +600103b0 00000000 5b623fda 00440001 -600107b4 +600103b4 b08ab5bf 00000000 00440001 -600107b8 +600103b8 00000000 332433a7 00440001 -600107bc +600103bc 17aced3b 00000000 00440001 -600107c0 +600103c0 00000000 00000200 00440001 -600107fc +600103fc 80000000 00000000 10440001 -60010fe0 +600107e0 00000000 ad5d7f58 00000000 FFFFFFFF 10440001 -60010fe4 +600107e4 c619f73f 00000000 FFFFFFFF 00000000 10440001 -60010fe8 +600107e8 00000000 5a54de49 00000000 FFFFFFFF 10440001 -60010fec +600107ec 038b0529 00000000 FFFFFFFF 00000000 10440001 -60010ff0 +600107f0 00000000 92343513 00000000 FFFFFFFF 10440001 -60010ff4 +600107f4 ea3cf2a9 00000000 FFFFFFFF 00000000 10440001 -60010ff8 +600107f8 00000000 5a1b530b 00000000 FFFFFFFF 10440001 -60010ffc +600107fc 49393b4e 00000000 FFFFFFFF 00000000 00440001 -60010780 +60010380 00000000 2319760c 00440001 -60010784 +60010384 c25e8486 00000000 00440001 -60010788 +60010388 00000000 e2be9c44 00440001 -6001078c +6001038c 28e4aeaf 00000000 00440001 -60010790 +60010390 00000000 ae725608 00440001 -60010794 +60010394 d394d5f8 00000000 00440001 -60010798 +60010398 00000000 f6768cc7 00440001 -6001079c +6001039c 7f51d709 00000000 00440001 -600107a0 +600103a0 00000000 4c99a726 00440001 -600107a4 +600103a4 2586fbc4 00000000 00440001 -600107a8 +600103a8 00000000 d2f30b37 00440001 -600107ac +600103ac 8c71f0c5 00000000 00440001 -600107b0 +600103b0 00000000 4acf0b2d 00440001 -600107b4 +600103b4 d0d8e335 00000000 00440001 -600107b8 +600103b8 00000000 88af1d5f 00440001 -600107bc +600103bc e69dad36 00000000 00440001 -600107c0 +600103c0 00000000 00000200 00440001 -600107fc +600103fc 80000000 00000000 10440001 -60010fe0 +600107e0 00000000 105755f3 00000000 FFFFFFFF 10440001 -60010fe4 +600107e4 1ca8459e 00000000 FFFFFFFF 00000000 10440001 -60010fe8 +600107e8 00000000 08ffade5 00000000 FFFFFFFF 10440001 -60010fec +600107ec 29a2e390 00000000 FFFFFFFF 00000000 10440001 -60010ff0 +600107f0 00000000 c6905543 00000000 FFFFFFFF 10440001 -60010ff4 +600107f4 5ed0766b 00000000 FFFFFFFF 00000000 10440001 -60010ff8 +600107f8 00000000 9a63b562 00000000 FFFFFFFF 10440001 -60010ffc +600107fc 95262422 00000000 FFFFFFFF 00000000 00440001 -60010780 +60010380 00000000 2a17c8e9 00440001 -60010784 +60010384 63931b41 00000000 00440001 -60010788 +60010388 00000000 d191bfc8 00440001 -6001078c +6001038c 40d7f3fc 00000000 00440001 -60010790 +60010390 00000000 60754253 00440001 -60010794 +60010394 d5f6ef4c 00000000 00440001 -60010798 +60010398 00000000 a49ff89d 00440001 -6001079c +6001039c b3f9bc39 00000000 00440001 -600107a0 +600103a0 00000000 7ba3ec2e 00440001 -600107a4 +600103a4 f100cac2 00000000 00440001 -600107a8 +600103a8 00000000 552ac1d3 00440001 -600107ac +600103ac 657744db 00000000 00440001 -600107b0 +600103b0 00000000 fa2402f8 00440001 -600107b4 +600103b4 5e2ea772 00000000 00440001 -600107b8 +600103b8 00000000 572c2bf0 00440001 -600107bc +600103bc 372eb887 00000000 00440001 -600107c0 +600103c0 00000000 00000200 00440001 -600107fc +600103fc 80000000 00000000 10440001 -60010fe0 +600107e0 00000000 1f335cad 00000000 FFFFFFFF 10440001 -60010fe4 +600107e4 7d8c6b58 00000000 FFFFFFFF 00000000 10440001 -60010fe8 +600107e8 00000000 cb265158 00000000 FFFFFFFF 10440001 -60010fec +600107ec ee44b230 00000000 FFFFFFFF 00000000 10440001 -60010ff0 +600107f0 00000000 88e5f660 00000000 FFFFFFFF 10440001 -60010ff4 +600107f4 96ee3bc5 00000000 FFFFFFFF 00000000 10440001 -60010ff8 +600107f8 00000000 96cf9939 00000000 FFFFFFFF 10440001 -60010ffc +600107fc 38849fc2 00000000 FFFFFFFF 00000000 00440001 -60010780 +60010380 00000000 ac465530 00440001 -60010784 +60010384 6e6a3d49 00000000 00440001 -60010788 +60010388 00000000 e7f1461f 00440001 -6001078c +6001038c c6f4b35f 00000000 00440001 -60010790 +60010390 00000000 f82a46d6 00440001 -60010794 +60010394 440244f5 00000000 00440001 -60010798 +60010398 00000000 6bde0ef1 00440001 -6001079c +6001039c b0787487 00000000 00440001 -600107a0 +600103a0 00000000 1a96af96 00440001 -600107a4 +600103a4 a55fef07 00000000 00440001 -600107a8 +600103a8 00000000 ea97471c 00440001 -600107ac +600103ac 35bad402 00000000 00440001 -600107b0 +600103b0 00000000 b3733250 00440001 -600107b4 +600103b4 75028929 00000000 00440001 -600107b8 +600103b8 00000000 230c2b19 00440001 -600107bc +600103bc 0bfe6ea9 00000000 00440001 -600107c0 +600103c0 00000000 00000200 00440001 -600107fc +600103fc 80000000 00000000 10440001 -60010fe0 +600107e0 00000000 0b51e243 00000000 FFFFFFFF 10440001 -60010fe4 +600107e4 37b05a4b 00000000 FFFFFFFF 00000000 10440001 -60010fe8 +600107e8 00000000 02497784 00000000 FFFFFFFF 10440001 -60010fec +600107ec aed161d2 00000000 FFFFFFFF 00000000 10440001 -60010ff0 +600107f0 00000000 7f6590f6 00000000 FFFFFFFF 10440001 -60010ff4 +600107f4 479570fd 00000000 FFFFFFFF 00000000 10440001 -60010ff8 +600107f8 00000000 ae0cb755 00000000 FFFFFFFF 10440001 -60010ffc +600107fc ee161bc2 00000000 FFFFFFFF 00000000 00440001 -60010780 +60010380 00000000 ec8225d7 00440001 -60010784 +60010384 9193267a 00000000 00440001 -60010788 +60010388 00000000 c3f24d94 00440001 -6001078c +6001038c b295566e 00000000 00440001 -60010790 +60010390 00000000 034a0bc0 00440001 -60010794 +60010394 1a4d2e6b 00000000 00440001 -60010798 +60010398 00000000 a6ed70c9 00440001 -6001079c +6001039c 4d573f76 00000000 00440001 -600107a0 +600103a0 00000000 45b0e216 00440001 -600107a4 +600103a4 db750cbb 00000000 00440001 -600107a8 +600103a8 00000000 4138b929 00440001 -600107ac +600103ac d67d1bbd 00000000 00440001 -600107b0 +600103b0 00000000 24fdf316 00440001 -600107b4 +600103b4 0650c084 00000000 00440001 -600107b8 +600103b8 00000000 f95e6e9c 00440001 -600107bc +600103bc 877e2642 00000000 00440001 -600107c0 +600103c0 00000000 00000200 00440001 -600107fc +600103fc 80000000 00000000 10440001 -60010fe0 +600107e0 00000000 6d572f08 00000000 FFFFFFFF 10440001 -60010fe4 +600107e4 e0c7b6dd 00000000 FFFFFFFF 00000000 10440001 -60010fe8 +600107e8 00000000 88674260 00000000 FFFFFFFF 10440001 -60010fec +600107ec a5ae48a8 00000000 FFFFFFFF 00000000 10440001 -60010ff0 +600107f0 00000000 a7112033 00000000 FFFFFFFF 10440001 -60010ff4 +600107f4 c555cde2 00000000 FFFFFFFF 00000000 10440001 -60010ff8 +600107f8 00000000 51c0db63 00000000 FFFFFFFF 10440001 -60010ffc +600107fc 60f9e31b 00000000 FFFFFFFF 00000000 00440001 -60010780 +60010380 00000000 387dc590 00440001 -60010784 +60010384 2966f6a3 00000000 00440001 -60010788 +60010388 00000000 add14662 00440001 -6001078c +6001038c 0bc2175e 00000000 00440001 -60010790 +60010390 00000000 3d2556a0 00440001 -60010794 +60010394 335c30a8 00000000 00440001 -60010798 +60010398 00000000 50e7e900 00440001 -6001079c +6001039c b1b72206 00000000 00440001 -600107a0 +600103a0 00000000 c6f526b0 00440001 -600107a4 +600103a4 15a4177f 00000000 00440001 -600107a8 +600103a8 00000000 f0d718a4 00440001 -600107ac +600103ac 48879677 00000000 00440001 -600107b0 +600103b0 00000000 8934d6c4 00440001 -600107b4 +600103b4 50ab7c39 00000000 00440001 -600107b8 +600103b8 00000000 3360bbd7 00440001 -600107bc +600103bc efdf5963 00000000 00440001 -600107c0 +600103c0 00000000 00000200 00440001 -600107fc +600103fc 80000000 00000000 10440001 -60010fe0 +600107e0 00000000 24eb65ee 00000000 FFFFFFFF 10440001 -60010fe4 +600107e4 309707c9 00000000 FFFFFFFF 00000000 10440001 -60010fe8 +600107e8 00000000 af5d19d2 00000000 FFFFFFFF 10440001 -60010fec +600107ec d4e713d3 00000000 FFFFFFFF 00000000 10440001 -60010ff0 +600107f0 00000000 5d160f7a 00000000 FFFFFFFF 10440001 -60010ff4 +600107f4 400e3734 00000000 FFFFFFFF 00000000 10440001 -60010ff8 +600107f8 00000000 b6a8cf6c 00000000 FFFFFFFF 10440001 -60010ffc +600107fc 3a012531 00000000 FFFFFFFF 00000000 00440001 -60010780 +60010380 00000000 2a22cd0b 00440001 -60010784 +60010384 f570eb78 00000000 00440001 -60010788 +60010388 00000000 d3a5b873 00440001 -6001078c +6001038c 53d7f89b 00000000 00440001 -60010790 +60010390 00000000 ebedc242 00440001 -60010794 +60010394 59a1ee9a 00000000 00440001 -60010798 +60010398 00000000 cea792f4 00440001 -6001079c +6001039c edf99c9c 00000000 00440001 -600107a0 +600103a0 00000000 47ab7368 00440001 -600107a4 +600103a4 a0eddacc 00000000 00440001 -600107a8 +600103a8 00000000 e218002f 00440001 -600107ac +600103ac 1498319a 00000000 00440001 -600107b0 +600103b0 00000000 b1f10e58 00440001 -600107b4 +600103b4 8d03ecb0 00000000 00440001 -600107b8 +600103b8 00000000 4408ab12 00440001 -600107bc +600103bc cabcc637 00000000 00440001 -600107c0 +600103c0 00000000 00000200 00440001 -600107fc +600103fc 80000000 00000000 10440001 -60010fe0 +600107e0 00000000 5951566a 00000000 FFFFFFFF 10440001 -60010fe4 +600107e4 b8a4b430 00000000 FFFFFFFF 00000000 10440001 -60010fe8 +600107e8 00000000 9fe9980d 00000000 FFFFFFFF 10440001 -60010fec +600107ec 80069d04 00000000 FFFFFFFF 00000000 10440001 -60010ff0 +600107f0 00000000 093d866f 00000000 FFFFFFFF 10440001 -60010ff4 +600107f4 7af5e3f6 00000000 FFFFFFFF 00000000 10440001 -60010ff8 +600107f8 00000000 cc432473 00000000 FFFFFFFF 10440001 -60010ffc +600107fc 090f1978 00000000 FFFFFFFF diff --git a/wrapper/verif/tb_wrapper_secworks_sha256.sv b/wrapper/verif/tb_wrapper_secworks_sha256.sv index 37d734350a4798ff88464f3d640d00a82966b564..cbfce6e898aef9a1a5b06fa834391c259e2a901e 100644 --- a/wrapper/verif/tb_wrapper_secworks_sha256.sv +++ b/wrapper/verif/tb_wrapper_secworks_sha256.sv @@ -46,7 +46,7 @@ module tb_wrapper_secworks_sha256; parameter CLK_PERIOD = 10; parameter ADDRWIDTH = 12; -parameter InputFileName = ("/home/dam1n19/Design/secworks-sha-256-system-top/wrapper/stimulus/ahb_input_hash_stim.m2d"); +parameter InputFileName = ("/home/dam1n19/Design/secworks-sha256-project/wrapper/stimulus/ahb_input_hash_stim.m2d"); parameter MessageTag = "FileReader:"; parameter StimArraySize = 10000;