⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 security.rmh

📁 和picoblaze完全兼容的mcu ip core
💻 RMH
📖 第 1 页 / 共 5 页
字号:
/* Symbol Table */// CRC_send_loop = LABEL: 128// ISR = LABEL: 997// ISR_preserve_s0 = CONSTANT: 0// LCD_DB4 = CONSTANT: 16// LCD_DB5 = CONSTANT: 32// LCD_DB6 = CONSTANT: 64// LCD_DB7 = CONSTANT: 128// LCD_E = CONSTANT: 1// LCD_RS = CONSTANT: 4// LCD_RW = CONSTANT: 2// LCD_clear = LABEL: 825// LCD_cursor = LABEL: 830// LCD_drive = CONSTANT: 8// LCD_input_port = CONSTANT: 3// LCD_output_port = CONSTANT: 32// LCD_pulse_E = LABEL: 741// LCD_read_DB4 = CONSTANT: 16// LCD_read_DB5 = CONSTANT: 32// LCD_read_DB6 = CONSTANT: 64// LCD_read_DB7 = CONSTANT: 128// LCD_read_data8 = LABEL: 783// LCD_read_spare0 = CONSTANT: 1// LCD_read_spare1 = CONSTANT: 2// LCD_read_spare2 = CONSTANT: 4// LCD_read_spare3 = CONSTANT: 8// LCD_reset = LABEL: 808// LCD_write_data = LABEL: 766// LCD_write_inst4 = LABEL: 747// LCD_write_inst8 = LABEL: 751// Menu = LABEL: 60// SF_addr_hi_port = CONSTANT: 131// SF_addr_lo_port = CONSTANT: 129// SF_addr_mi_port = CONSTANT: 130// SF_byte_read = LABEL: 257// SF_byte_write = LABEL: 267// SF_ce = CONSTANT: 2// SF_control_port = CONSTANT: 64// SF_data_in_port = CONSTANT: 2// SF_data_out_port = CONSTANT: 128// SF_erase_block = LABEL: 228// SF_init = LABEL: 225// SF_read = CONSTANT: 1// SF_single_byte_write = LABEL: 236// SF_we = CONSTANT: 4// UART_data = REGISTER: 15// UART_read_port = CONSTANT: 1// UART_write = LABEL: 295// UART_write_port = CONSTANT: 8// auth_byte_loop = LABEL: 180// auth_check2 = LABEL: 156// auth_check3 = LABEL: 160// auth_check4 = LABEL: 164// auth_failure = LABEL: 54// auth_line_loop = LABEL: 177// auth_passed = LABEL: 51// auth_read_delay = LABEL: 171// auth_read_loop = LABEL: 151// auth_write_check2 = LABEL: 200// auth_write_check3 = LABEL: 206// auth_write_check4 = LABEL: 212// auth_write_loop = LABEL: 193// authentication_CRC0 = CONSTANT: 26// authentication_CRC1 = CONSTANT: 27// authentication_control_port = CONSTANT: 16// authentication_status = CONSTANT: 28// authorise_command = LABEL: 79// character_0 = CONSTANT: 48// character_1 = CONSTANT: 49// character_2 = CONSTANT: 50// character_3 = CONSTANT: 51// character_4 = CONSTANT: 52// character_5 = CONSTANT: 53// character_6 = CONSTANT: 54// character_7 = CONSTANT: 55// character_8 = CONSTANT: 56// character_9 = CONSTANT: 57// character_A = CONSTANT: 65// character_B = CONSTANT: 66// character_BS = CONSTANT: 8// character_C = CONSTANT: 67// character_CR = CONSTANT: 13// character_D = CONSTANT: 68// character_E = CONSTANT: 69// character_F = CONSTANT: 70// character_G = CONSTANT: 71// character_H = CONSTANT: 72// character_I = CONSTANT: 73// character_J = CONSTANT: 74// character_K = CONSTANT: 75// character_L = CONSTANT: 76// character_M = CONSTANT: 77// character_N = CONSTANT: 78// character_O = CONSTANT: 79// character_P = CONSTANT: 80// character_Q = CONSTANT: 81// character_R = CONSTANT: 82// character_S = CONSTANT: 83// character_T = CONSTANT: 84// character_U = CONSTANT: 85// character_V = CONSTANT: 86// character_W = CONSTANT: 87// character_X = CONSTANT: 88// character_Y = CONSTANT: 89// character_Z = CONSTANT: 90// character_a = CONSTANT: 97// character_b = CONSTANT: 98// character_c = CONSTANT: 99// character_colon = CONSTANT: 58// character_comma = CONSTANT: 44// character_d = CONSTANT: 100// character_divide = CONSTANT: 47// character_dollar = CONSTANT: 36// character_e = CONSTANT: 101// character_equals = CONSTANT: 61// character_exclaim = CONSTANT: 33// character_f = CONSTANT: 102// character_fullstop = CONSTANT: 46// character_g = CONSTANT: 103// character_greater_than = CONSTANT: 62// character_h = CONSTANT: 104// character_i = CONSTANT: 105// character_j = CONSTANT: 106// character_k = CONSTANT: 107// character_l = CONSTANT: 108// character_less_than = CONSTANT: 60// character_m = CONSTANT: 109// character_minus = CONSTANT: 45// character_n = CONSTANT: 110// character_o = CONSTANT: 111// character_p = CONSTANT: 112// character_plus = CONSTANT: 43// character_q = CONSTANT: 113// character_question = CONSTANT: 63// character_r = CONSTANT: 114// character_s = CONSTANT: 115// character_semi_colon = CONSTANT: 59// character_space = CONSTANT: 32// character_t = CONSTANT: 116// character_u = CONSTANT: 117// character_v = CONSTANT: 118// character_w = CONSTANT: 119// character_x = CONSTANT: 120// character_y = CONSTANT: 121// character_z = CONSTANT: 122// cold_start = LABEL: 0// compute_CRC16 = LABEL: 134// compute_seeded_CRC = LABEL: 127// computed_CRC0 = CONSTANT: 24// computed_CRC1 = CONSTANT: 25// crc16_loop = LABEL: 135// crc16_shift = LABEL: 141// delay_1ms = LABEL: 849// delay_1s = LABEL: 859// delay_1us = LABEL: 840// delay_1us_constant = CONSTANT: 11// delay_20ms = LABEL: 854// delay_40us = LABEL: 844// delay_Ns = LABEL: 864// disable_app_hardware = LABEL: 86// disp_Authentication = LABEL: 937// disp_FLASH_Serial_No = LABEL: 904// disp_Failed = LABEL: 982// disp_Passed = LABEL: 968// disp_PicoBlaze = LABEL: 868// disp_SN_loop = LABEL: 119// disp_Security = LABEL: 887// disp_hex_byte = LABEL: 333// disp_serial_number = LABEL: 112// end_ISR = LABEL: 1016// end_disp_SN = LABEL: 125// end_read_SN = LABEL: 255// end_send_SN = LABEL: 110// erase_authentication = LABEL: 222// erase_command = LABEL: 75// hex_byte_to_ASCII = LABEL: 303// hex_to_ASCII = LABEL: 315// link_FIFO_write_port = CONSTANT: 4// next_auth_read = LABEL: 168// number_char = LABEL: 318// pass_token = LABEL: 1010// random_value_port = CONSTANT: 4// read_SF_serial_number = LABEL: 242// read_SN_loop = LABEL: 248// read_authentication = LABEL: 148// read_character = LABEL: 289// read_command = LABEL: 70// read_from_UART = LABEL: 285// rx_data_present = CONSTANT: 4// rx_full = CONSTANT: 16// rx_half_full = CONSTANT: 8// s0 = REGISTER: 0// s1 = REGISTER: 1// s2 = REGISTER: 2// s3 = REGISTER: 3// s4 = REGISTER: 4// s5 = REGISTER: 5// s6 = REGISTER: 6// s7 = REGISTER: 7// s8 = REGISTER: 8// s9 = REGISTER: 9// sA = REGISTER: 10// sB = REGISTER: 11// sC = REGISTER: 12// sD = REGISTER: 13// sE = REGISTER: 14// sF = REGISTER: 15// security_disable_interrupts = CONSTANT: 1// security_disable_outputs = CONSTANT: 2// send_Auth = LABEL: 527// send_Authentication = LABEL: 562// send_Authoris = LABEL: 536// send_Authorisation = LABEL: 546// send_Authorise = LABEL: 558// send_CR = LABEL: 340// send_CRC = LABEL: 585// send_Computed_CRC = LABEL: 594// send_Copyright = LABEL: 436// send_Erase = LABEL: 611// send_Erase_in_progress = LABEL: 623// send_FAILED = LABEL: 655// send_FLASH = LABEL: 487// send_FLASH_CRC = LABEL: 584// send_FLASH_Serial_Number = LABEL: 498// send_Menu = LABEL: 700// send_OK = LABEL: 649// send_PASSED = LABEL: 669// send_SN_loop = LABEL: 103// send_Writing = LABEL: 682// send_auth_page = LABEL: 174// send_dash = LABEL: 351// send_equals = LABEL: 346// send_hex_3bytes = LABEL: 326// send_hex_byte = LABEL: 320// send_serial_number = LABEL: 101// send_space = LABEL: 343// send_to_UART = LABEL: 291// send_welcome = LABEL: 356// serial_number0 = CONSTANT: 16// serial_number1 = CONSTANT: 17// serial_number2 = CONSTANT: 18// serial_number3 = CONSTANT: 19// serial_number4 = CONSTANT: 20// serial_number5 = CONSTANT: 21// serial_number6 = CONSTANT: 22// serial_number7 = CONSTANT: 23// set_SF_read_array_mode = LABEL: 277// set_line2 = LABEL: 836// spare1 = CONSTANT: 32// spare2 = CONSTANT: 64// status_port = CONSTANT: 0// strataflash_sts = CONSTANT: 128// tx_full = CONSTANT: 2// tx_half_full = CONSTANT: 1// upper_case = LABEL: 297// wait_1ms = LABEL: 850// wait_1s = LABEL: 860// wait_1us = LABEL: 841// wait_20ms = LABEL: 855// wait_40us = LABEL: 845// wait_SF_ready = LABEL: 280// warm_start = LABEL: 8// write_auth = LABEL: 218// write_authentication = LABEL: 190/* Program Code */// #1: ; KCPSM3 Program - Security control and design authentication.// #2: ;// #3: ; This program is provided for use with the reference design// #4: ; 'low_cost_design_authentication_for_spartan_3e.vhd' implemented on the Spartan-3E Starter// #5: ; Kit. The program provides design authentication control over the 'real' application as well// #6: ; as providing features to enable evaluation of the design authentication method.// #7: ;// #8: ; Ken Chapman - Xilinx Ltd// #9: ;// #10: ; Version v1.00 - 1st November 2006// #11: ;// #12: ; This code communicates with the StrataFLASH memory to implement a design authentication// #13: ; algorithm which then enables the main application design in various ways. To facilitate// #14: ; evaluation of design authentication this design also interacts with the LCD display// #15: ; and PC (via UART based RS232 link) to indicate authentication status and allow control// #16: ; over the authentication validity of the design. Therefore this program includes:-// #17: ;// #18: ; 1) Code required to check authorisation which would be included in a production design.// #19: ; 2) Code required to program the authentication value into FLASH memory which would// #20: ;    typically only be implemented in a special design used at a secure programming// #21: ;    facility as part of the production programming procedure.// #22: ; 3) Code to allow you to see what is happening at all stages which is code that should// #23: ;    never be included in a real production design as it reveals secrets that should remain// #24: ;    hidden in order to make the task of breaking the security as difficult as possible.// #25: ;// #26: ; IMPORTANT - Feel free to use this code as a reference for your own security scheme but// #27: ;             never use this code unmodified.// #28: ;// #29: ;// #30: ;**************************************************************************************// #31: ; NOTICE:// #32: ;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -