URL
https://opencores.org/ocsvn/iso7816_3_master/iso7816_3_master/trunk
[/] [iso7816_3_master/] [trunk/] [test/] [HexStringConversion.v] - Diff between revs 9 and 10
Go to most recent revision |
Only display areas with differences |
Details |
Blame |
View Log
Rev 9 |
Rev 10 |
|
|
function [7:0] hexString2Byte;
|
function [7:0] hexString2Byte;
|
input [15:0] byteInHexString;
|
input [15:0] byteInHexString;
|
integer i;
|
integer i;
|
reg [7:0] hexDigit;
|
reg [7:0] hexDigit;
|
reg [4:0] nibble;
|
reg [4:0] nibble;
|
begin
|
begin
|
//hexString2Byte=0;
|
//hexString2Byte=0;
|
for(i=0;i<2;i=i+1) begin
|
for(i=0;i<2;i=i+1) begin
|
nibble=5'b10000;//invalid
|
nibble=5'b10000;//invalid
|
hexDigit=byteInHexString[i*8+:8];
|
hexDigit=byteInHexString[i*8+:8];
|
if(("0"<=hexDigit)&&("9">=hexDigit))
|
if(("0"<=hexDigit)&&("9">=hexDigit))
|
nibble=hexDigit-"0";
|
nibble=hexDigit-"0";
|
if(("a"<=hexDigit)&&("f">=hexDigit))
|
if(("a"<=hexDigit)&&("f">=hexDigit))
|
nibble=10+hexDigit-"a";
|
nibble=10+hexDigit-"a";
|
if(("A"<=hexDigit)&&("F">=hexDigit))
|
if(("A"<=hexDigit)&&("F">=hexDigit))
|
nibble=10+hexDigit-"A";
|
nibble=10+hexDigit-"A";
|
if(nibble>15) begin
|
if(nibble>15) begin
|
$display("Invalid input for hex conversion: '%s', hexDigit='%s' (%x), nibble=%d",byteInHexString,hexDigit,hexDigit,nibble);
|
$display("Invalid input for hex conversion: '%s', hexDigit='%s' (%x), nibble=%d",byteInHexString,hexDigit,hexDigit,nibble);
|
$finish;
|
$finish;
|
end
|
end
|
hexString2Byte[i*4+:4]=nibble;
|
hexString2Byte[i*4+:4]=nibble;
|
end
|
end
|
end
|
end
|
endfunction
|
endfunction
|
|
|
|
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.