diff options
| author | Eric Dao <eric@erickhangdao.com> | 2025-03-10 17:54:31 -0400 |
|---|---|---|
| committer | Eric Dao <eric@erickhangdao.com> | 2025-03-10 17:54:31 -0400 |
| commit | ab224e2e6ba65f5a369ec392f99cd8845ad06c98 (patch) | |
| tree | a1e757e9341863ed52b8ad4c5a1c45933aab9da4 /python/openvino/demo/ip/intel_ai_ip/verilog/dla_dsp_m18x18_full.sv | |
| parent | 40da1752f2c8639186b72f6838aa415e854d0b1d (diff) | |
| download | thesis-master.tar.gz thesis-master.tar.bz2 thesis-master.zip | |
Diffstat (limited to 'python/openvino/demo/ip/intel_ai_ip/verilog/dla_dsp_m18x18_full.sv')
| -rw-r--r-- | python/openvino/demo/ip/intel_ai_ip/verilog/dla_dsp_m18x18_full.sv | 223 |
1 files changed, 223 insertions, 0 deletions
diff --git a/python/openvino/demo/ip/intel_ai_ip/verilog/dla_dsp_m18x18_full.sv b/python/openvino/demo/ip/intel_ai_ip/verilog/dla_dsp_m18x18_full.sv new file mode 100644 index 0000000..8a96de8 --- /dev/null +++ b/python/openvino/demo/ip/intel_ai_ip/verilog/dla_dsp_m18x18_full.sv @@ -0,0 +1,223 @@ +`pragma protect begin_protected +`pragma protect version=1 +`pragma protect author="Intel Corporation" +`pragma protect encrypt_agent="Quartus Prime Pro Software" +`pragma protect encrypt_agent_info="17.1" + +`pragma protect key_keyowner="Intel Corporation" +`pragma protect key_method="rsa" +`pragma protect key_keyname="Intel-FPGA-Quartus-RSA-1" +`pragma protect encoding=(enctype = "base64", line_length = 76, bytes = 256) +`pragma protect key_block +lNIz+eOveOBliYkF91EwdRIGCQnxYyz0KE1oEP0NGlqv+A3xBxW16bzUVMVzS+J4JmeQRdW4Om0w +9Yni65X0PbcQ/5ysINJer1VfRcKLYvE1YlvlM/ZNG3uLW/lPVSheKTc+ubhXyH0ecpu5lNZL6gAA +8z34LKVC1vmpu9lrhqUEFBYvWfqLI+0TuGpiXgDWruB2e2A7TIPPU9YWg5ZCYxxkei4eXWGcXzX7 +eP7tpRnpJENiH05/2VF2Fy/1AoAoFm6ln7j9nMiJN6Xmr206mrdQ0InfjRanWRCoINdiH/1MHAJD +f5sjBOL8ctr3N//u3MQ8XEqIBmzr0St/tau4KA== + +`pragma protect data_method="aes128-cbc" +`pragma protect encoding=(enctype = "base64", line_length = 76, bytes = 11472) +`pragma protect data_block +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 +4X1/XR6o5fdQA0Neihk5 +`pragma protect end_protected |
