From adc43bd0ad4d43770d2488259a43b5ea1a28097d Mon Sep 17 00:00:00 2001 From: xver Date: Tue, 19 Dec 2023 11:58:54 -0500 Subject: [PATCH] update: Python doc --- doc/Working Data/LastCrash.txt | 27 ++ doc/classes/Python/SVpiVecVal-Summary.js | 1 + .../Python/SVpiVecVal-SummaryToolTips.js | 1 + doc/classes/Python/SVpiVecVal-ToolTips.js | 1 + doc/classes/Python/SVpiVecVal.html | 19 ++ doc/classes/Python/Shunt-Summary.js | 1 + doc/classes/Python/Shunt-SummaryToolTips.js | 1 + doc/classes/Python/Shunt-ToolTips.js | 1 + doc/classes/Python/Shunt.html | 256 +++++++++++++++ doc/classes/Python/cs_data_header-Summary.js | 1 + .../Python/cs_data_header-SummaryToolTips.js | 1 + doc/classes/Python/cs_data_header-ToolTips.js | 1 + doc/classes/Python/cs_data_header.html | 29 ++ doc/classes/Python/cs_header-Summary.js | 1 + .../Python/cs_header-SummaryToolTips.js | 1 + doc/classes/Python/cs_header-ToolTips.js | 1 + doc/classes/Python/cs_header.html | 29 ++ doc/files5/shunt-py-Summary.js | 1 + doc/files5/shunt-py-SummaryToolTips.js | 1 + doc/files5/shunt-py-ToolTips.js | 1 + doc/files5/shunt-py.html | 294 ++++++++++++++++++ doc/menu/classes.js | 1 + doc/search/keywords/007300760070.js | 1 + .../images/theme-menu-autolightblack.svg | 12 + .../images/theme-menu-autolightdark.svg | 12 + 25 files changed, 695 insertions(+) create mode 100644 doc/Working Data/LastCrash.txt create mode 100644 doc/classes/Python/SVpiVecVal-Summary.js create mode 100644 doc/classes/Python/SVpiVecVal-SummaryToolTips.js create mode 100644 doc/classes/Python/SVpiVecVal-ToolTips.js create mode 100644 doc/classes/Python/SVpiVecVal.html create mode 100644 doc/classes/Python/Shunt-Summary.js create mode 100644 doc/classes/Python/Shunt-SummaryToolTips.js create mode 100644 doc/classes/Python/Shunt-ToolTips.js create mode 100644 doc/classes/Python/Shunt.html create mode 100644 doc/classes/Python/cs_data_header-Summary.js create mode 100644 doc/classes/Python/cs_data_header-SummaryToolTips.js create mode 100644 doc/classes/Python/cs_data_header-ToolTips.js create mode 100644 doc/classes/Python/cs_data_header.html create mode 100644 doc/classes/Python/cs_header-Summary.js create mode 100644 doc/classes/Python/cs_header-SummaryToolTips.js create mode 100644 doc/classes/Python/cs_header-ToolTips.js create mode 100644 doc/classes/Python/cs_header.html create mode 100644 doc/files5/shunt-py-Summary.js create mode 100644 doc/files5/shunt-py-SummaryToolTips.js create mode 100644 doc/files5/shunt-py-ToolTips.js create mode 100644 doc/files5/shunt-py.html create mode 100644 doc/menu/classes.js create mode 100644 doc/search/keywords/007300760070.js create mode 100644 doc/styles/Default/images/theme-menu-autolightblack.svg create mode 100644 doc/styles/Default/images/theme-menu-autolightdark.svg diff --git a/doc/Working Data/LastCrash.txt b/doc/Working Data/LastCrash.txt new file mode 100644 index 00000000..77824243 --- /dev/null +++ b/doc/Working Data/LastCrash.txt @@ -0,0 +1,27 @@ +Generated on 12/19/2023 11:52:52 + +Crash Message: + + Could not step query. Unexpected SQLite result: Corrupt + (CodeClear.NaturalDocs.Engine.SQLite.Exceptions.UnexpectedResult) + +Stack Trace: + + at CodeClear.NaturalDocs.Engine.SQLite.Query.Step () [0x0002c] in <6c4aae649fee44548beb007d054c6a0e>:0 + at CodeClear.NaturalDocs.Engine.SQLite.Connection.Execute (System.String statement, System.Object[] values) [0x0000f] in <6c4aae649fee44548beb007d054c6a0e>:0 + at CodeClear.NaturalDocs.Engine.CodeDB.Manager.CreateDatabase () [0x000f6] in <6c4aae649fee44548beb007d054c6a0e>:0 + at CodeClear.NaturalDocs.Engine.CodeDB.Manager.Start (CodeClear.NaturalDocs.Engine.Errors.ErrorList errors) [0x000d7] in <6c4aae649fee44548beb007d054c6a0e>:0 + at CodeClear.NaturalDocs.Engine.Instance.Start (CodeClear.NaturalDocs.Engine.Errors.ErrorList errors, CodeClear.NaturalDocs.Engine.Config.ProjectConfig commandLineConfig) [0x000f8] in <6c4aae649fee44548beb007d054c6a0e>:0 + at CodeClear.NaturalDocs.CLI.Application.BuildDocumentation (CodeClear.NaturalDocs.Engine.Errors.ErrorList errorList) [0x0002d] in <95ee6211a68e43a5bffc51f192461eb2>:0 + at CodeClear.NaturalDocs.CLI.Application.Main (System.String[] commandLine) [0x00141] in <95ee6211a68e43a5bffc51f192461eb2>:0 + +Command Line: + + /home/v/tools/ND/NaturalDocs.exe . + +Versions: + + Natural Docs 2.3 + Unix 6.2.0.39 + Mono 6.8.0.105 + SQLite 3.41.2 diff --git a/doc/classes/Python/SVpiVecVal-Summary.js b/doc/classes/Python/SVpiVecVal-Summary.js new file mode 100644 index 00000000..112a6e9c --- /dev/null +++ b/doc/classes/Python/SVpiVecVal-Summary.js @@ -0,0 +1 @@ +NDFramePage.OnPageTitleLoaded("PythonClass:SVpiVecVal","SVpiVecVal");NDSummary.OnSummaryLoaded("PythonClass:SVpiVecVal",[["Python","Python"]],[["Classes","Class"]],[[36,0,0,"SVpiVecVal"]]); \ No newline at end of file diff --git a/doc/classes/Python/SVpiVecVal-SummaryToolTips.js b/doc/classes/Python/SVpiVecVal-SummaryToolTips.js new file mode 100644 index 00000000..3e706908 --- /dev/null +++ b/doc/classes/Python/SVpiVecVal-SummaryToolTips.js @@ -0,0 +1 @@ +NDSummary.OnToolTipsLoaded("PythonClass:SVpiVecVal",{36:"
SVpiVecVal
A ctypes Structure representing a verilog vector  aval/bval of 4-state data type,32-bit signed integer LRM 6.11 Integer data types Contains two 32-bit unsigned integers.
"}); \ No newline at end of file diff --git a/doc/classes/Python/SVpiVecVal-ToolTips.js b/doc/classes/Python/SVpiVecVal-ToolTips.js new file mode 100644 index 00000000..eddcd48f --- /dev/null +++ b/doc/classes/Python/SVpiVecVal-ToolTips.js @@ -0,0 +1 @@ +NDContentPage.OnToolTipsLoaded({}); \ No newline at end of file diff --git a/doc/classes/Python/SVpiVecVal.html b/doc/classes/Python/SVpiVecVal.html new file mode 100644 index 00000000..f82e1584 --- /dev/null +++ b/doc/classes/Python/SVpiVecVal.html @@ -0,0 +1,19 @@ + + +SVpiVecVal + + + + + + + + + +
+
SVpiVecVal
+
ctypes.​Structure
SVpiVecVal
+

A ctypes Structure representing a verilog vector  aval/bval of 4-state data type,32-bit signed integer LRM 6.11 Integer data types Contains two 32-bit unsigned integers.

bval aval | 4-state verilog value
----------|----------------------
0 0 | 0
0 1 | 1
1 0 | X
1 1 | Z
+
+ + \ No newline at end of file diff --git a/doc/classes/Python/Shunt-Summary.js b/doc/classes/Python/Shunt-Summary.js new file mode 100644 index 00000000..7817dfe3 --- /dev/null +++ b/doc/classes/Python/Shunt-Summary.js @@ -0,0 +1 @@ +NDFramePage.OnPageTitleLoaded("PythonClass:Shunt","Shunt");NDSummary.OnSummaryLoaded("PythonClass:Shunt",[["Python","Python"]],[["Classes","Class"],["Functions","Function"],["Groups","Group"]],[[37,0,0,"Shunt"],[38,0,2,"Functions","Functions"],[39,0,1,"shunt_py_target_init","shunt_py_target_init"],[40,0,1,"shunt_py_initiator_init","shunt_py_initiator_init"],[41,0,1,"shunt_py_close_socket","shunt_py_close_socket"],[42,0,1,"shunt_py_unblock_socket","shunt_py_unblock_socket"],[43,0,1,"shunt_py_tcp_nodelay_socket","shunt_py_tcp_nodelay_socket"],[44,0,1,"shunt_py_get_status_socket","shunt_py_get_status_socket"],[45,0,1,"shunt_py_listener_init","shunt_py_listener_init"],[46,0,1,"shunt_py_tcp_connect","shunt_py_tcp_connect"],[47,0,1,"shunt_py_tcp_get_port","shunt_py_tcp_get_port"],[48,0,1,"shunt_py_tcp_parent_init_initiator_dpa","shunt_py_tcp_parent_init_initiator_dpa"],[49,0,1,"shunt_py_send_short","shunt_py_send_short"],[50,0,1,"shunt_py_recv_short","shunt_py_recv_short"],[51,0,1,"shunt_py_send_long","shunt_py_send_long"],[52,0,1,"shunt_py_recv_long","shunt_py_recv_long"],[53,0,1,"shunt_py_send_int","shunt_py_send_int"],[54,0,1,"shunt_py_recv_int","shunt_py_recv_int"],[55,0,1,"shunt_py_send_real","shunt_py_send_real"],[56,0,1,"shunt_py_recv_real","shunt_py_recv_real"],[57,0,1,"shunt_py_send_byte","shunt_py_send_byte"],[58,0,1,"shunt_py_recv_byte","shunt_py_recv_byte"],[59,0,1,"shunt_py_send_bit","shunt_py_send_bit"],[60,0,1,"shunt_py_recv_bit","shunt_py_recv_bit"],[61,0,1,"shunt_py_send_reg","shunt_py_send_reg"],[62,0,1,"shunt_py_recv_reg","shunt_py_recv_reg"],[63,0,1,"shunt_py_send_logic","shunt_py_send_logic"],[64,0,1,"shunt_py_recv_logic","shunt_py_recv_logic"],[65,0,1,"shunt_py_recv_integer","shunt_py_recv_integer"],[66,0,1,"shunt_py_send_time","shunt_py_send_time"],[67,0,1,"shunt_py_recv_time","shunt_py_recv_time"],[68,0,1,"shunt_py_send_string","shunt_py_send_string"],[69,0,1,"shunt_py_recv_string","shunt_py_recv_string"],[70,0,1,"shunt_py_get_cs_header_id","shunt_py_get_cs_header_id"],[71,0,1,"shunt_py_tlm_header_id","shunt_py_tlm_header_id"],[72,0,1,"shunt_py_tlm_data_id","shunt_py_tlm_data_id"],[73,0,1,"shunt_py_tlm_axi3_ext_id","shunt_py_tlm_axi3_ext_id"],[74,0,1,"shunt_py_tlm_signal_id","shunt_py_tlm_signal_id"],[75,0,1,"shunt_py_hash","shunt_py_hash"],[76,0,1,"shunt_py_send_header","shunt_py_send_header"],[77,0,1,"shunt_py_recv_header","shunt_py_recv_header"]]); \ No newline at end of file diff --git a/doc/classes/Python/Shunt-SummaryToolTips.js b/doc/classes/Python/Shunt-SummaryToolTips.js new file mode 100644 index 00000000..6a3d9135 --- /dev/null +++ b/doc/classes/Python/Shunt-SummaryToolTips.js @@ -0,0 +1 @@ +NDSummary.OnToolTipsLoaded("PythonClass:Shunt",{37:"
Shunt
Python to System Verilog bridge
",39:"
def shunt_py_target_init(
self,
portno,
hostname
)
TCP/IP target initialization
",40:"
def shunt_py_initiator_init(
self,
portno
)
",41:"
def shunt_py_close_socket(
self,
fd
)
Terminates TCP socket
",42:"
def shunt_py_unblock_socket(
self,
flag,
fd
)
Sets TCP socket unblocked mode
",43:"
def shunt_py_tcp_nodelay_socket(
self,
flag,
sockfd
)
Enable/disable Nagle algorithm (TCP_NODELAY)
",44:"
def shunt_py_get_status_socket(
self,
fd,
event
)
Returns status for <fd> TCP socket <event>
",45:"
def shunt_py_listener_init(
self,
portno
)
Multi-Slave TCP IP initialization, create TCP/IP a parent(listener) and start listening for client connections
",46:"
def shunt_py_tcp_connect(
self,
parentfd
)
Multi-Slave TCP IP initialization, establish TCP/IP initiator-target connection
",47:"
def shunt_py_tcp_get_port(
self,
socket
)
Finds TCP/IP port with the specified socket id
",48:"
def shunt_py_tcp_parent_init_initiator_dpa(
self
)
PY equivalent of the shunt_cs_tcp_parent_init_initiator_dp
",49:"
def shunt_py_send_short(
self,
sockfd,
Short
)
Send Verilog "shortint" / C "short int" data over TCP/IP
",50:"
def shunt_py_recv_short(
self,
sockfd
)
Fetch Verilog "shortint"/C "short int" data from TCP/IP socket
",51:"
def shunt_py_send_long(
self,
sockfd,
Long
)
Send Verilog "longint" / C "long" data over TCP/IP
",52:"
def shunt_py_recv_long(
self,
sockfd
)
Fetch Verilog "longint" / C "long" data from TCP/IP socket
",53:"
def shunt_py_send_int(
self,
sockfd,
Int
)
Send Verilog/C "int" data over TCP/IP
",54:"
def shunt_py_recv_int(
self,
sockfd
)
Fetch Verilog/C "int" data from TCP/IP socket
",55:"
def shunt_py_send_real(
self,
sockfd,
Real
)
Send Verilog "real"/C "double" data over TCP/IP
",56:"
def shunt_py_recv_real(
self,
sockfd
)
Fetch Verilog "real"/C "double" data from TCP/IP socket
",57:"
def shunt_py_send_byte(
self,
sockfd,
Byte
)
Send Verilog "byte"/C "char" data over TCP/IP
",58:"
def shunt_py_recv_byte(
self,
sockfd
)
Fetch verilog "byte"/C "char" over TCP/IP
",59:"
def shunt_py_send_bit(
self,
sockfd,
Bit
)
Send Verilog "byte"/C "char" data over TCP/IP
",60:"
def shunt_py_recv_bit(
self,
sockfd
)
Fetch Verilog "byte"/C "char" data from TCP/IP socket
",61:"
def shunt_py_send_reg(
self,
sockfd,
Reg
)
Send Verilog "reg"/C "char" data over TCP/IP
",62:"
def shunt_py_recv_reg(
self,
sockfd
)
Fetch Verilog "reg"/C "char" data from TCP/IP socket
",63:"
def shunt_py_send_logic(
self,
sockfd,
Logic
)
Send Verilog "byte"/C "char" data over TCP/IP
",64:"
def shunt_py_recv_logic(
self,
sockfd
)
Fetch Verilog "byte"/C "char" data from TCP/IP socket
",65:"
def shunt_py_recv_integer(
self,
sockfd
)
Fetch Verilog "reg[31:0] 4 state aval,bval" data from TCP/IP
",66:"
def shunt_py_send_time(
self,
sockfd,
Time
)
Send Verilog "reg[31:0] 4 state aval,bval" data over TCP/IP
",67:"
def shunt_py_recv_time(
self,
sockfd
)
Fetch Verilog "reg[31:0] 4 state aval,bval" data from TCP/IP
",68:"
def shunt_py_send_string(
self,
sockfd,
String
)
Send SHUNT transaction with verilog string/C char* elements over TCP/IP
",69:"
def shunt_py_recv_string(
self,
sockfd,
size
)
Fetch SHUNT transaction with verilog string/C char* elements from TCP/IP
",70:"
def shunt_py_get_cs_header_id(
self,
sockfd
)
Predefined hash functions for obtaining the specific hash value.
",71:"
def shunt_py_tlm_header_id(
self,
sockfd
)
Predefined hash functions for obtaining the specific hash value.
",72:"
Predefined hash functions for obtaining the specific hash value.
",73:"
def shunt_py_tlm_axi3_ext_id(
self,
sockfd
)
Predefined hash functions for obtaining the specific hash value.
",74:"
def shunt_py_tlm_signal_id(
self,
sockfd
)
Predefined hash functions for obtaining the specific hash value.
",75:"
def shunt_py_hash(
self,
string
)
Simple hash function.
",76:"
def shunt_py_send_header(
self,
sockfd,
h
)
Send SHUNT header over TCP/IP.
",77:"
def shunt_py_recv_header(
self,
sockfd
)
Fetch SHUNT transaction header from TCP/IP socket.
"}); \ No newline at end of file diff --git a/doc/classes/Python/Shunt-ToolTips.js b/doc/classes/Python/Shunt-ToolTips.js new file mode 100644 index 00000000..ccc97c40 --- /dev/null +++ b/doc/classes/Python/Shunt-ToolTips.js @@ -0,0 +1 @@ +NDContentPage.OnToolTipsLoaded({101:"
int shunt_dpi_send_short (
const 
int 
sockfd,
const short 
int 
Short
)
send verilog"shortint" /C "short int" data over TCP/IP
",102:"
int shunt_dpi_recv_short (
int 
sockfd,
short 
int
Short
)
fetch verilog"shortint"/C "short int" data from TCP/IP socket
",103:"
int shunt_dpi_send_long (
const 
int 
sockfd,
const 
shunt_long_t 
Long
)
send verilog"longint" /C "long" data over TCP/IP
",104:"
int shunt_dpi_recv_long (
int 
sockfd,
shunt_long_t* 
Long
)
fetch verilog"longint"/C "long" data from TCP/IP socket
",105:"
int shunt_dpi_send_int (
const unsigned 
int 
sockfd,
const 
int 
Int
)
send verilog/C "int" data over TCP/IP
",106:"
int shunt_dpi_recv_int (
const unsigned 
int 
sockfd,
int
Int
)
fetch verilog/C "int" data from TCP/IP socket
",107:"
int shunt_dpi_send_real (
const unsigned 
int 
sockfd,
const 
double 
Real
)
send verilog "real"/C "double" over TCP/IP
",108:"
int shunt_dpi_recv_real (
const unsigned 
int 
sockfd,
double
Real
)
fetch verilog "real"/C "double" over TCP/IP
",113:"
int shunt_dpi_send_byte (
const unsigned 
int 
sockfd,
const 
char 
Byte
)
send verilog "byte"/C "char" over TCP/IP
",114:"
int shunt_dpi_recv_byte (
const unsigned 
int 
sockfd,
char
Byte
)
fetch verilog "byte"/C "char" over TCP/IP
",115:"
int shunt_dpi_send_bit (
const unsigned 
int 
sockfd,
const 
svBit 
Bit
)
send verilog "byte"/C "char" over TCP/IP
",116:"
int shunt_dpi_recv_bit (
const unsigned 
int 
sockfd,
svBit* 
Bit
)
fetch verilog "byte"/C "char" over TCP/IP
",118:"
int shunt_dpi_recv_reg (
const unsigned 
int 
sockfd,
svLogic* 
Reg
)
fetch verilog "byte"/C "char" over TCP/IP
",119:"
int shunt_dpi_send_logic (
const unsigned 
int 
sockfd,
const 
svLogic 
Logic
)
send verilog "byte"/C "char" over TCP/IP
",120:"
int shunt_dpi_recv_logic (
const unsigned 
int 
sockfd,
svLogic* 
Logic
)
fetch verilog "byte"/C "char" over TCP/IP
",121:"
int shunt_dpi_send_integer (
const unsigned 
int 
sockfd,
svLogicVecVal* 
Int
)
send  verilog "reg[31:0] 4 state aval,bval" over TCP/IP
",123:"
int shunt_dpi_send_time (
const unsigned 
int 
sockfd,
svLogicVecVal* 
Time
)
send  verilog "reg[31:0] 4 state aval,bval" over TCP/IP
",124:"
int shunt_dpi_recv_time (
const unsigned 
int 
sockfd,
svLogicVecVal* 
Time
)
fetch verilog "reg[31:0] 4 state aval,bval" from TCP/IP
",137:"
int shunt_dpi_send_string (
int 
sockid,
int 
size,
char
string
)
send SHUNT transaction with verilog string/C char* elements over TCP/IP
",138:"
int shunt_dpi_recv_string (
int 
sockid,
int 
size,
char** 
string
)
fetch SHUNT transaction with verilog string/C char* elements from TCP/IP
",351:"
INLINE unsigned int shunt_prim_init_initiator(
const unsigned 
int 
portno
)
TCP/IP initiator initialization
",354:"
INLINE unsigned int shunt_prim_init_target(
const unsigned 
int 
portno,
const 
char 
*
hostname
)
TCP/IP target initialization
",363:"
INLINE int shunt_prim_send_int (
const 
int 
sockfd,
const 
int
Int
)
send verilog/C "int" data over TCP/IP
",364:"
INLINE int shunt_prim_recv_int (
const 
int 
sockfd,
int
Int
)
fetch verilog/C "int" data from TCP/IP socket
",365:"
INLINE int shunt_prim_send_double (
const 
int 
sockfd,
const 
double
Double
)
send verilog "double" over TCP/IP
",366:"
INLINE int shunt_prim_recv_double (
const 
int 
sockfd,
double
Double
)
fetch verilog "real"/"shortreal"/"realtime"/C "double"/"float","double" from TCP/IP
",369:"
INLINE int shunt_prim_send_short (
const 
int 
sockfd,
const short 
int
Short
)
send verilog "shortint"/C "short int" over TCP/IP
",370:"
INLINE int shunt_prim_recv_short (
const 
int 
sockfd,
short 
int
Short
)
fetch verilog "shortint"/C "short int" over TCP/IP
",371:"
INLINE int shunt_prim_send_long (
const 
int 
sockfd,
const 
shunt_long_t* 
Long
)
send verilog "longint"/C "long" over TCP/IP
",372:"
INLINE int shunt_prim_recv_long (
const 
int 
sockfd,
shunt_long_t* 
Long
)
fetch verilog "longint"/C "long" over TCP/IP
",373:"
INLINE int shunt_prim_send_byte (
const 
int 
sockfd,
const 
char
Byte
)
send verilog/C "Byte/Char" data over TCP/IP
",374:"
INLINE int shunt_prim_recv_byte (
const 
int 
sockfd,
char
Byte
)
fetch verilog/C "Byte/Char" data from TCP/IP socket
",376:"
INLINE int shunt_prim_recv_integer (
const unsigned 
int 
sockfd,
svLogicVecVal* 
Int
)
fetch verilog "reg[31:0] 4 state aval,bval" from TCP/IP
",382:"
INLINE unsigned int shunt_cs_init_initiator(
const unsigned 
int 
portno_in
)
TCP/IP initiator (server) initialization
",384:"
INLINE unsigned int shunt_cs_init_target(
const unsigned 
int 
portno_in ,
const 
char 
*
hostname
)
TCP/IP target (client) initialization
",407:"
INLINE int shunt_cs_send_byteV (
int 
sockid,
const 
cs_header* 
header,
const 
char
byteV
)
send SHUNT transaction with verilog byteV/string/C char* elements over TCP/IP
",419:"
INLINE shunt_long_t shunt_cs_get_cs_header_leader()
predefined hash functions for obtain the specific hash value.
",420:"
INLINE shunt_long_t shunt_cs_get_tlm_header_leader()
predefined hash functions for obtain the specific hash value.
",421:"
INLINE shunt_long_t shunt_cs_get_tlm_data_leader()
predefined hash functions for obtain the specific hash value.
",422:"
INLINE shunt_long_t shunt_cs_get_tlm_axi3_ext_leader()
predefined hash functions for obtain the specific hash value.
",423:"
INLINE shunt_long_t shunt_cs_get_tlm_axi3_signal_leader()
predefined hash functions for obtain the specific hash value.
"}); \ No newline at end of file diff --git a/doc/classes/Python/Shunt.html b/doc/classes/Python/Shunt.html new file mode 100644 index 00000000..5de165ec --- /dev/null +++ b/doc/classes/Python/Shunt.html @@ -0,0 +1,256 @@ + + +Shunt + + + + + + + + + +
+
Shunt
+
Shunt
+

Python to System Verilog bridge

TODO:  shunt_py_tlm_send_command shunt_py_tlm_send_gp_transport shunt_py_tlm_recv_gp_transport shunt_py_tlm_recv_gp_header shunt_py_tlm_send_gp_header shunt_py_tlm_recv_axi3_header shunt_py_tlm_send_axi3_header shunt_py_tlm_recv_gp_data

TODO:  shunt_py_send_bitN shunt_py_recv_bitN  shunt_py_send_longV shunt_py_recv_longV shunt_py_send_data_header  shunt_py_recv_data_header

Not Implemented Features: shunt_py_send_realtime shunt_py_recv_realtime shunt_py_send_shortreal shunt_py_recv_shortreal

+
+ +
+
Functions
+
+ +
+
shunt_py_target_init
+
def shunt_py_target_init(
self,
portno,
hostname
)
+

TCP/IP target initialization

Parameters
  • portno: socket port

  • hostname: initiator name

Returns
  • socket id

See Also
NOTE

If portno_in = 0 -- assign a free client-server TCP port.  SHUNT_DEFAULT_TCP_PORT is reserved for the dynamic allocation of the client-server TCP port.

+
+ +
+
shunt_py_initiator_init
+
def shunt_py_initiator_init(
self,
portno
)
+
TCP/IP "one server"

"one target" point-to-point initiator initialization

Parameters
  • portno: socket port

Returns
  • socket id

See Also
NOTE

If portno_in = 0 -- assign a free client-server TCP port.  SHUNT_DEFAULT_TCP_PORT is reserved for the dynamic allocation of the client-server TCP port.

+
+ +
+
shunt_py_close_socket
+
def shunt_py_close_socket(
self,
fd
)
+

Terminates TCP socket

Parameters
  • fd: socket id

Returns
  • N/A

+
+ +
+
shunt_py_unblock_socket
+
def shunt_py_unblock_socket(
self,
flag,
fd
)
+

Sets TCP socket unblocked mode

Parameters
- flag: 1/0

unblocked(default)/blocked - fd: socket id

Returns
  • N/A

+
+ +
+
shunt_py_tcp_nodelay_socket
+
def shunt_py_tcp_nodelay_socket(
self,
flag,
sockfd
)
+

Enable/disable Nagle algorithm (TCP_NODELAY)

Parameters
- flag: 1/0

enable/disable Nagle algorithm (TCP_NODELAY) - sockfd: socket id

Returns
  • N/A

+
+ +
+
shunt_py_get_status_socket
+
def shunt_py_get_status_socket(
self,
fd,
event
)
+

Returns status for <fd> TCP socket <event>

Parameters
  • fd: socket id

  • event: short event - the <event> mask is specifying following

  • 0 - is equal to POLLIN, data is ready to recv()

  • 1 - is equal to POLLOUT, socket can send() data to this socket without blocking

  • else is equal to POLLNVAL, function returns "process failed" status;

Returns
  • socket event status

  • "0" - No <event>

  • "-1" - <event> process has failed

  • "1" - <event> occurs

+
+ +
+
shunt_py_listener_init
+
def shunt_py_listener_init(
self,
portno
)
+

Multi-Slave TCP IP initialization, create TCP/IP a parent(listener) and start listening for client connections

Parameters
  • portno: socket port

Returns
- socket id

parent socket id

+
+ +
+
shunt_py_tcp_connect
+
def shunt_py_tcp_connect(
self,
parentfd
)
+

Multi-Slave TCP IP initialization, establish TCP/IP initiator-target connection

Parameters
- parentfd: socket id

parent socket id

Returns
- socket id

child socket id

+
+ +
+
shunt_py_tcp_get_port
+
def shunt_py_tcp_get_port(
self,
socket
)
+

Finds TCP/IP port with the specified socket id

Parameters
  • socket: socket id

Returns
  • a corresponding TCP/IP port

Also see shunt_cs_update_dynamic_port

+
+ +
+
shunt_py_tcp_parent_init_initiator_dpa
+
def shunt_py_tcp_parent_init_initiator_dpa(
self
)
+

PY equivalent of the shunt_cs_tcp_parent_init_initiator_dp

Parameters
  • N/A

Returns
- socket id

DPA parent socket id

+
+ +
+
shunt_py_send_short
+
def shunt_py_send_short(
self,
sockfd,
Short
)
+

Send Verilog "shortint" / C "short int" data over TCP/IP

Parameters
  • sockfd: socket id

  • Short: data

Returns
  • number of bytes have been sent : success > 0

See Also
+
+ +
+
shunt_py_recv_short
+
def shunt_py_recv_short(
self,
sockfd
)
+

Fetch Verilog "shortint"/C "short int" data from TCP/IP socket

Parameters
  • sockfd: socket id

  • Short: data

Returns
  • number of bytes have been received : success > 0

  • Short: data

See Also
+
+ +
+
shunt_py_send_long
+
def shunt_py_send_long(
self,
sockfd,
Long
)
+

Send Verilog "longint" / C "long" data over TCP/IP

Parameters
  • sockfd: socket id

  • Long: data

Returns
  • number of bytes have been sent : success > 0

See Also
+
+ +
+
shunt_py_recv_long
+
def shunt_py_recv_long(
self,
sockfd
)
+

Fetch Verilog "longint" / C "long" data from TCP/IP socket

Parameters
  • sockfd: socket id

Returns
  • number of bytes have been received : success > 0

  • Long: data

See Also
+
+ +
+
shunt_py_send_int
+
def shunt_py_send_int(
self,
sockfd,
Int
)
+

Send Verilog/C "int" data over TCP/IP

Parameters
  • sockfd: socket id

  • Int: data

Returns
  • number of bytes have been sent : success > 0

See Also
+
+ +
+
shunt_py_recv_int
+
def shunt_py_recv_int(
self,
sockfd
)
+

Fetch Verilog/C "int" data from TCP/IP socket

Parameters
  • sockfd: socket id

Returns
  • number of bytes have been received : success > 0

  • Int: data

See Also
+
+ +
+
shunt_py_send_real
+
def shunt_py_send_real(
self,
sockfd,
Real
)
+

Send Verilog "real"/C "double" data over TCP/IP

Parameters
  • sockfd: socket id

  • Real: data

Returns
  • number of bytes have been sent : success > 0

See Also
+
+ +
+
shunt_py_recv_real
+
def shunt_py_recv_real(
self,
sockfd
)
+

Fetch Verilog "real"/C "double" data from TCP/IP socket

Parameters
  • sockfd: socket id

Returns
  • number of bytes have been sent : success > 0

  • Real: data

See Also
+
+ +
+
shunt_py_send_byte
+
def shunt_py_send_byte(
self,
sockfd,
Byte
)
+

Send Verilog "byte"/C "char" data over TCP/IP

Parameters
  • sockfd: socket id

  • Byte: data

Returns
  • number of bytes have been sent : success = 1

See Also
+
+ +
+
shunt_py_recv_byte
+
def shunt_py_recv_byte(
self,
sockfd
)
+

Fetch verilog "byte"/C "char" over TCP/IP

Parameters
  • sockfd: socket id

Returns
  • number of bytes have been received: success = 1

  • Byte - data

+
+ +
+
shunt_py_send_bit
+
def shunt_py_send_bit(
self,
sockfd,
Bit
)
+

Send Verilog "byte"/C "char" data over TCP/IP

Parameters
  • sockfd: socket id

  • Bit: data

Returns
  • number of bytes have been sent : success = 1

See Also
+
+ +
+
shunt_py_recv_bit
+
def shunt_py_recv_bit(
self,
sockfd
)
+

Fetch Verilog "byte"/C "char" data from TCP/IP socket

Parameters
  • sockfd: socket id

Returns
  • number of bytes have been sent : success = 1

  • Bit: data

See Also
+
+ +
+
shunt_py_send_reg
+
def shunt_py_send_reg(
self,
sockfd,
Reg
)
+

Send Verilog "reg"/C "char" data over TCP/IP

Parameters
  • sockfd: socket id

  • Reg: data

Returns
  • number of bytes have been sent : success = 1

See Also
+
+ +
+
shunt_py_recv_reg
+
def shunt_py_recv_reg(
self,
sockfd
)
+

Fetch Verilog "reg"/C "char" data from TCP/IP socket

Parameters
  • sockfd: socket id

Returns
  • number of bytes have been sent : success = 1

  • Reg: data

See Also
+
+ +
+
shunt_py_send_logic
+
def shunt_py_send_logic(
self,
sockfd,
Logic
)
+

Send Verilog "byte"/C "char" data over TCP/IP

Parameters
  • sockfd: socket id

  • Logic: data

Returns
  • number of bytes have been sent : success = 1

See Also
+
+ +
+
shunt_py_recv_logic
+
def shunt_py_recv_logic(
self,
sockfd
)
+

Fetch Verilog "byte"/C "char" data from TCP/IP socket

Parameters
  • sockfd: socket id

Returns
  • number of bytes have been sent : success = 1

  • Logic: data

See Also
+
+ +
+
shunt_py_recv_integer
+
def shunt_py_recv_integer(
self,
sockfd
)
+

Fetch Verilog "reg[31:0] 4 state aval,bval" data from TCP/IP

Parameters
  • sockfd: socket id

Returns
  • number of bytes have been received : success > 0

  • Integer: data

See Also
+
+ +
+
shunt_py_send_time
+
def shunt_py_send_time(
self,
sockfd,
Time
)
+

Send Verilog "reg[31:0] 4 state aval,bval" data over TCP/IP

Parameters
  • sockfd: socket id

  • Time: data

Returns
  • number of bytes have been sent : success > 0

See Also
+
+ +
+
shunt_py_recv_time
+
def shunt_py_recv_time(
self,
sockfd
)
+

Fetch Verilog "reg[31:0] 4 state aval,bval" data from TCP/IP

Parameters
  • sockfd: socket id

Returns
  • number of bytes have been received : success > 0

  • Time: data

See Also
+
+ +
+
shunt_py_send_string
+
def shunt_py_send_string(
self,
sockfd,
String
)
+

Send SHUNT transaction with verilog string/C char* elements over TCP/IP

Parameters
  • sockid: socket id

  • size: number of string elements

  • string: data

Returns
  • number of elements have been sent : success > 0

See Also
+
+ +
+
shunt_py_recv_string
+
def shunt_py_recv_string(
self,
sockfd,
size
)
+

Fetch SHUNT transaction with verilog string/C char* elements from TCP/IP

Parameters
  • sockid: socket id

  • size: number of string elements

Returns
  • number of elements have been received: success > 0

  • String: data

See Also
+
+ +
+
shunt_py_get_cs_header_id
+
def shunt_py_get_cs_header_id(
self,
sockfd
)
+

Predefined hash functions for obtaining the specific hash value.

Parameters
  • N/A

Returns
  • long: hash value

See Also
+
+ +
+
shunt_py_tlm_header_id
+
def shunt_py_tlm_header_id(
self,
sockfd
)
+

Predefined hash functions for obtaining the specific hash value.

Parameters
  • N/A

Returns
  • long: hash value

See Also
+
+ +
+
shunt_py_tlm_data_id
+

Predefined hash functions for obtaining the specific hash value.

Parameters
  • N/A

Returns
  • long: hash value

See Also
+
+ +
+
shunt_py_tlm_axi3_ext_id
+
def shunt_py_tlm_axi3_ext_id(
self,
sockfd
)
+

Predefined hash functions for obtaining the specific hash value.

Parameters
  • N/A

Returns
  • long: hash value

See Also
+
+ +
+
shunt_py_tlm_signal_id
+
def shunt_py_tlm_signal_id(
self,
sockfd
)
+

Predefined hash functions for obtaining the specific hash value.

Parameters
  • N/A

Returns
  • long: hash value

See Also
+
+ +
+
shunt_py_hash
+
def shunt_py_hash(
self,
string
)
+

Simple hash function.

Parameters
  • s: hash key

Returns
  • hash value

Example Usage

hash_key = "example_key" Replace with your hash key hash_value = shunt_dpi_hash(hash_key) print(f"Hash value for key '{hash_key}': {hash_value}")

+
+ +
+
shunt_py_send_header
+
def shunt_py_send_header(
self,
sockfd,
h
)
+

Send SHUNT header over TCP/IP.

Parameters
  • sockid: socket id from init server/target

  • h: cs_header structure

Returns
  • number of elements have been sent: success > 0

+
+ +
+
shunt_py_recv_header
+
def shunt_py_recv_header(
self,
sockfd
)
+

Fetch SHUNT transaction header from TCP/IP socket.

Parameters
  • sockid: socket id from init server/target

Returns
  • number of elements have been received: success > 0

  • h: cs_header structure

+
+ + \ No newline at end of file diff --git a/doc/classes/Python/cs_data_header-Summary.js b/doc/classes/Python/cs_data_header-Summary.js new file mode 100644 index 00000000..6c25ceb2 --- /dev/null +++ b/doc/classes/Python/cs_data_header-Summary.js @@ -0,0 +1 @@ +NDFramePage.OnPageTitleLoaded("PythonClass:cs_data_header","cs_data_header");NDSummary.OnSummaryLoaded("PythonClass:cs_data_header",[["Python","Python"]],[["Classes","Class"],["Functions","Function"],["Groups","Group"]],[[30,0,0,"cs_data_header"],[31,0,2,"Functions","Functions"],[32,0,1,"print_structure","print_structure"]]); \ No newline at end of file diff --git a/doc/classes/Python/cs_data_header-SummaryToolTips.js b/doc/classes/Python/cs_data_header-SummaryToolTips.js new file mode 100644 index 00000000..dfac92bb --- /dev/null +++ b/doc/classes/Python/cs_data_header-SummaryToolTips.js @@ -0,0 +1 @@ +NDSummary.OnToolTipsLoaded("PythonClass:cs_data_header",{30:"
cs_data_header
A ctypes Structure representing  cs_data_header data header.  This structure contains fields for transaction payload sizes and data type.
",32:"
def print_structure(
self
)
Prints cs_data_header structure.
"}); \ No newline at end of file diff --git a/doc/classes/Python/cs_data_header-ToolTips.js b/doc/classes/Python/cs_data_header-ToolTips.js new file mode 100644 index 00000000..e95af6e4 --- /dev/null +++ b/doc/classes/Python/cs_data_header-ToolTips.js @@ -0,0 +1 @@ +NDContentPage.OnToolTipsLoaded({30:"
cs_data_header
A ctypes Structure representing  cs_data_header data header.  This structure contains fields for transaction payload sizes and data type.
"}); \ No newline at end of file diff --git a/doc/classes/Python/cs_data_header.html b/doc/classes/Python/cs_data_header.html new file mode 100644 index 00000000..8bc16234 --- /dev/null +++ b/doc/classes/Python/cs_data_header.html @@ -0,0 +1,29 @@ + + +cs_data_header + + + + + + + + + +
+
cs_data_header
+
ctypes.​Structure
cs_data_header
+

A ctypes Structure representing  cs_data_header data header.  This structure contains fields for transaction payload sizes and data type.

  • data_type  SHUNT_INSTR_ENUM

  • trnx_payload_sizes  array of payload sizes, number of array elements are equal to n_payloads

see cs_header_t

+
+ +
+
Functions
+
+ +
+
print_structure
+
def print_structure(
self
)
+

Prints cs_data_header structure.

+
+ + \ No newline at end of file diff --git a/doc/classes/Python/cs_header-Summary.js b/doc/classes/Python/cs_header-Summary.js new file mode 100644 index 00000000..b82668c6 --- /dev/null +++ b/doc/classes/Python/cs_header-Summary.js @@ -0,0 +1 @@ +NDFramePage.OnPageTitleLoaded("PythonClass:cs_header","cs_header");NDSummary.OnSummaryLoaded("PythonClass:cs_header",[["Python","Python"]],[["Classes","Class"],["Functions","Function"],["Groups","Group"]],[[33,0,0,"cs_header"],[34,0,2,"Functions","Functions"],[35,0,1,"print_structure","print_structure"]]); \ No newline at end of file diff --git a/doc/classes/Python/cs_header-SummaryToolTips.js b/doc/classes/Python/cs_header-SummaryToolTips.js new file mode 100644 index 00000000..9c036c11 --- /dev/null +++ b/doc/classes/Python/cs_header-SummaryToolTips.js @@ -0,0 +1 @@ +NDSummary.OnToolTipsLoaded("PythonClass:cs_header",{33:"
cs_header
A ctypes Structure representing  cs_header communication protocol.  This structure includes fields for transaction type, ID, data type, and number of payloads.
",35:"
def print_structure(
self
)
Prints cs_header structure.
"}); \ No newline at end of file diff --git a/doc/classes/Python/cs_header-ToolTips.js b/doc/classes/Python/cs_header-ToolTips.js new file mode 100644 index 00000000..38d99370 --- /dev/null +++ b/doc/classes/Python/cs_header-ToolTips.js @@ -0,0 +1 @@ +NDContentPage.OnToolTipsLoaded({33:"
cs_header
A ctypes Structure representing  cs_header communication protocol.  This structure includes fields for transaction type, ID, data type, and number of payloads.
",326:"
typedef enum {
SHUNT_INT,
SHUNT_REAL,
SHUNT_SHORTREAL,
SHUNT_STRING,
SHUNT_A_STRUCTURE,
SHUNT_INTEGER,
SHUNT_BYTE,
SHUNT_REG,
SHUNT_BIT,
SHUNT_SHORTINT,
SHUNT_LONGINT,
SHUNT_HEADER_ONLY
} SHUNT_INSTR_ENUM
Integer 2 states:
"}); \ No newline at end of file diff --git a/doc/classes/Python/cs_header.html b/doc/classes/Python/cs_header.html new file mode 100644 index 00000000..9418535c --- /dev/null +++ b/doc/classes/Python/cs_header.html @@ -0,0 +1,29 @@ + + +cs_header + + + + + + + + + +
+
cs_header
+
ctypes.​Structure
cs_header
+

A ctypes Structure representing  cs_header communication protocol.  This structure includes fields for transaction type, ID, data type, and number of payloads.

  • trnx_type  user defined transaction attribute

  • trnx_id  user defined unique transaction number

  • data_type  SHUNT_INSTR_ENUM

  • n_payloads  number of data payloads (for Array number of vectors)

see cs_header cs_header_t

+
+ +
+
Functions
+
+ +
+
print_structure
+
def print_structure(
self
)
+

Prints cs_header structure.

+
+ + \ No newline at end of file diff --git a/doc/files5/shunt-py-Summary.js b/doc/files5/shunt-py-Summary.js new file mode 100644 index 00000000..932e7da0 --- /dev/null +++ b/doc/files5/shunt-py-Summary.js @@ -0,0 +1 @@ +NDFramePage.OnPageTitleLoaded("File5:shunt.py","shunt.py");NDSummary.OnSummaryLoaded("File5:shunt.py",[["Python","Python"]],[["Classes","Class"],["Functions","Function"],["Groups","Group"]],[[30,0,0,"cs_data_header","cs_data_header"],[31,0,2,"Functions","cs_data_header.Functions"],[32,0,1,"print_structure","cs_data_header.print_structure"],[33,0,0,"cs_header","cs_header"],[34,0,2,"Functions","cs_header.Functions"],[35,0,1,"print_structure","cs_header.print_structure"],[36,0,0,"SVpiVecVal","SVpiVecVal"],[37,0,0,"Shunt","Shunt"],[38,0,2,"Functions","Shunt.Functions"],[39,0,1,"shunt_py_target_init","Shunt.shunt_py_target_init"],[40,0,1,"shunt_py_initiator_init","Shunt.shunt_py_initiator_init"],[41,0,1,"shunt_py_close_socket","Shunt.shunt_py_close_socket"],[42,0,1,"shunt_py_unblock_socket","Shunt.shunt_py_unblock_socket"],[43,0,1,"shunt_py_tcp_nodelay_socket","Shunt.shunt_py_tcp_nodelay_socket"],[44,0,1,"shunt_py_get_status_socket","Shunt.shunt_py_get_status_socket"],[45,0,1,"shunt_py_listener_init","Shunt.shunt_py_listener_init"],[46,0,1,"shunt_py_tcp_connect","Shunt.shunt_py_tcp_connect"],[47,0,1,"shunt_py_tcp_get_port","Shunt.shunt_py_tcp_get_port"],[48,0,1,"shunt_py_tcp_parent_init_initiator_dpa","Shunt.shunt_py_tcp_parent_init_initiator_dpa"],[49,0,1,"shunt_py_send_short","Shunt.shunt_py_send_short"],[50,0,1,"shunt_py_recv_short","Shunt.shunt_py_recv_short"],[51,0,1,"shunt_py_send_long","Shunt.shunt_py_send_long"],[52,0,1,"shunt_py_recv_long","Shunt.shunt_py_recv_long"],[53,0,1,"shunt_py_send_int","Shunt.shunt_py_send_int"],[54,0,1,"shunt_py_recv_int","Shunt.shunt_py_recv_int"],[55,0,1,"shunt_py_send_real","Shunt.shunt_py_send_real"],[56,0,1,"shunt_py_recv_real","Shunt.shunt_py_recv_real"],[57,0,1,"shunt_py_send_byte","Shunt.shunt_py_send_byte"],[58,0,1,"shunt_py_recv_byte","Shunt.shunt_py_recv_byte"],[59,0,1,"shunt_py_send_bit","Shunt.shunt_py_send_bit"],[60,0,1,"shunt_py_recv_bit","Shunt.shunt_py_recv_bit"],[61,0,1,"shunt_py_send_reg","Shunt.shunt_py_send_reg"],[62,0,1,"shunt_py_recv_reg","Shunt.shunt_py_recv_reg"],[63,0,1,"shunt_py_send_logic","Shunt.shunt_py_send_logic"],[64,0,1,"shunt_py_recv_logic","Shunt.shunt_py_recv_logic"],[65,0,1,"shunt_py_recv_integer","Shunt.shunt_py_recv_integer"],[66,0,1,"shunt_py_send_time","Shunt.shunt_py_send_time"],[67,0,1,"shunt_py_recv_time","Shunt.shunt_py_recv_time"],[68,0,1,"shunt_py_send_string","Shunt.shunt_py_send_string"],[69,0,1,"shunt_py_recv_string","Shunt.shunt_py_recv_string"],[70,0,1,"shunt_py_get_cs_header_id","Shunt.shunt_py_get_cs_header_id"],[71,0,1,"shunt_py_tlm_header_id","Shunt.shunt_py_tlm_header_id"],[72,0,1,"shunt_py_tlm_data_id","Shunt.shunt_py_tlm_data_id"],[73,0,1,"shunt_py_tlm_axi3_ext_id","Shunt.shunt_py_tlm_axi3_ext_id"],[74,0,1,"shunt_py_tlm_signal_id","Shunt.shunt_py_tlm_signal_id"],[75,0,1,"shunt_py_hash","Shunt.shunt_py_hash"],[76,0,1,"shunt_py_send_header","Shunt.shunt_py_send_header"],[77,0,1,"shunt_py_recv_header","Shunt.shunt_py_recv_header"]]); \ No newline at end of file diff --git a/doc/files5/shunt-py-SummaryToolTips.js b/doc/files5/shunt-py-SummaryToolTips.js new file mode 100644 index 00000000..6e7f7525 --- /dev/null +++ b/doc/files5/shunt-py-SummaryToolTips.js @@ -0,0 +1 @@ +NDSummary.OnToolTipsLoaded("File5:shunt.py",{30:"
cs_data_header
A ctypes Structure representing  cs_data_header data header.  This structure contains fields for transaction payload sizes and data type.
",32:"
def print_structure(
self
)
Prints cs_data_header structure.
",33:"
cs_header
A ctypes Structure representing  cs_header communication protocol.  This structure includes fields for transaction type, ID, data type, and number of payloads.
",35:"
def print_structure(
self
)
Prints cs_header structure.
",36:"
SVpiVecVal
A ctypes Structure representing a verilog vector  aval/bval of 4-state data type,32-bit signed integer LRM 6.11 Integer data types Contains two 32-bit unsigned integers.
",37:"
Shunt
Python to System Verilog bridge
",39:"
def shunt_py_target_init(
self,
portno,
hostname
)
TCP/IP target initialization
",40:"
def shunt_py_initiator_init(
self,
portno
)
",41:"
def shunt_py_close_socket(
self,
fd
)
Terminates TCP socket
",42:"
def shunt_py_unblock_socket(
self,
flag,
fd
)
Sets TCP socket unblocked mode
",43:"
def shunt_py_tcp_nodelay_socket(
self,
flag,
sockfd
)
Enable/disable Nagle algorithm (TCP_NODELAY)
",44:"
def shunt_py_get_status_socket(
self,
fd,
event
)
Returns status for <fd> TCP socket <event>
",45:"
def shunt_py_listener_init(
self,
portno
)
Multi-Slave TCP IP initialization, create TCP/IP a parent(listener) and start listening for client connections
",46:"
def shunt_py_tcp_connect(
self,
parentfd
)
Multi-Slave TCP IP initialization, establish TCP/IP initiator-target connection
",47:"
def shunt_py_tcp_get_port(
self,
socket
)
Finds TCP/IP port with the specified socket id
",48:"
def shunt_py_tcp_parent_init_initiator_dpa(
self
)
PY equivalent of the shunt_cs_tcp_parent_init_initiator_dp
",49:"
def shunt_py_send_short(
self,
sockfd,
Short
)
Send Verilog "shortint" / C "short int" data over TCP/IP
",50:"
def shunt_py_recv_short(
self,
sockfd
)
Fetch Verilog "shortint"/C "short int" data from TCP/IP socket
",51:"
def shunt_py_send_long(
self,
sockfd,
Long
)
Send Verilog "longint" / C "long" data over TCP/IP
",52:"
def shunt_py_recv_long(
self,
sockfd
)
Fetch Verilog "longint" / C "long" data from TCP/IP socket
",53:"
def shunt_py_send_int(
self,
sockfd,
Int
)
Send Verilog/C "int" data over TCP/IP
",54:"
def shunt_py_recv_int(
self,
sockfd
)
Fetch Verilog/C "int" data from TCP/IP socket
",55:"
def shunt_py_send_real(
self,
sockfd,
Real
)
Send Verilog "real"/C "double" data over TCP/IP
",56:"
def shunt_py_recv_real(
self,
sockfd
)
Fetch Verilog "real"/C "double" data from TCP/IP socket
",57:"
def shunt_py_send_byte(
self,
sockfd,
Byte
)
Send Verilog "byte"/C "char" data over TCP/IP
",58:"
def shunt_py_recv_byte(
self,
sockfd
)
Fetch verilog "byte"/C "char" over TCP/IP
",59:"
def shunt_py_send_bit(
self,
sockfd,
Bit
)
Send Verilog "byte"/C "char" data over TCP/IP
",60:"
def shunt_py_recv_bit(
self,
sockfd
)
Fetch Verilog "byte"/C "char" data from TCP/IP socket
",61:"
def shunt_py_send_reg(
self,
sockfd,
Reg
)
Send Verilog "reg"/C "char" data over TCP/IP
",62:"
def shunt_py_recv_reg(
self,
sockfd
)
Fetch Verilog "reg"/C "char" data from TCP/IP socket
",63:"
def shunt_py_send_logic(
self,
sockfd,
Logic
)
Send Verilog "byte"/C "char" data over TCP/IP
",64:"
def shunt_py_recv_logic(
self,
sockfd
)
Fetch Verilog "byte"/C "char" data from TCP/IP socket
",65:"
def shunt_py_recv_integer(
self,
sockfd
)
Fetch Verilog "reg[31:0] 4 state aval,bval" data from TCP/IP
",66:"
def shunt_py_send_time(
self,
sockfd,
Time
)
Send Verilog "reg[31:0] 4 state aval,bval" data over TCP/IP
",67:"
def shunt_py_recv_time(
self,
sockfd
)
Fetch Verilog "reg[31:0] 4 state aval,bval" data from TCP/IP
",68:"
def shunt_py_send_string(
self,
sockfd,
String
)
Send SHUNT transaction with verilog string/C char* elements over TCP/IP
",69:"
def shunt_py_recv_string(
self,
sockfd,
size
)
Fetch SHUNT transaction with verilog string/C char* elements from TCP/IP
",70:"
def shunt_py_get_cs_header_id(
self,
sockfd
)
Predefined hash functions for obtaining the specific hash value.
",71:"
def shunt_py_tlm_header_id(
self,
sockfd
)
Predefined hash functions for obtaining the specific hash value.
",72:"
Predefined hash functions for obtaining the specific hash value.
",73:"
def shunt_py_tlm_axi3_ext_id(
self,
sockfd
)
Predefined hash functions for obtaining the specific hash value.
",74:"
def shunt_py_tlm_signal_id(
self,
sockfd
)
Predefined hash functions for obtaining the specific hash value.
",75:"
def shunt_py_hash(
self,
string
)
Simple hash function.
",76:"
def shunt_py_send_header(
self,
sockfd,
h
)
Send SHUNT header over TCP/IP.
",77:"
def shunt_py_recv_header(
self,
sockfd
)
Fetch SHUNT transaction header from TCP/IP socket.
"}); \ No newline at end of file diff --git a/doc/files5/shunt-py-ToolTips.js b/doc/files5/shunt-py-ToolTips.js new file mode 100644 index 00000000..f67c6eac --- /dev/null +++ b/doc/files5/shunt-py-ToolTips.js @@ -0,0 +1 @@ +NDContentPage.OnToolTipsLoaded({30:"
cs_data_header
A ctypes Structure representing  cs_data_header data header.  This structure contains fields for transaction payload sizes and data type.
",33:"
cs_header
A ctypes Structure representing  cs_header communication protocol.  This structure includes fields for transaction type, ID, data type, and number of payloads.
",101:"
int shunt_dpi_send_short (
const 
int 
sockfd,
const short 
int 
Short
)
send verilog"shortint" /C "short int" data over TCP/IP
",102:"
int shunt_dpi_recv_short (
int 
sockfd,
short 
int
Short
)
fetch verilog"shortint"/C "short int" data from TCP/IP socket
",103:"
int shunt_dpi_send_long (
const 
int 
sockfd,
const 
shunt_long_t 
Long
)
send verilog"longint" /C "long" data over TCP/IP
",104:"
int shunt_dpi_recv_long (
int 
sockfd,
shunt_long_t* 
Long
)
fetch verilog"longint"/C "long" data from TCP/IP socket
",105:"
int shunt_dpi_send_int (
const unsigned 
int 
sockfd,
const 
int 
Int
)
send verilog/C "int" data over TCP/IP
",106:"
int shunt_dpi_recv_int (
const unsigned 
int 
sockfd,
int
Int
)
fetch verilog/C "int" data from TCP/IP socket
",107:"
int shunt_dpi_send_real (
const unsigned 
int 
sockfd,
const 
double 
Real
)
send verilog "real"/C "double" over TCP/IP
",108:"
int shunt_dpi_recv_real (
const unsigned 
int 
sockfd,
double
Real
)
fetch verilog "real"/C "double" over TCP/IP
",113:"
int shunt_dpi_send_byte (
const unsigned 
int 
sockfd,
const 
char 
Byte
)
send verilog "byte"/C "char" over TCP/IP
",114:"
int shunt_dpi_recv_byte (
const unsigned 
int 
sockfd,
char
Byte
)
fetch verilog "byte"/C "char" over TCP/IP
",115:"
int shunt_dpi_send_bit (
const unsigned 
int 
sockfd,
const 
svBit 
Bit
)
send verilog "byte"/C "char" over TCP/IP
",116:"
int shunt_dpi_recv_bit (
const unsigned 
int 
sockfd,
svBit* 
Bit
)
fetch verilog "byte"/C "char" over TCP/IP
",118:"
int shunt_dpi_recv_reg (
const unsigned 
int 
sockfd,
svLogic* 
Reg
)
fetch verilog "byte"/C "char" over TCP/IP
",119:"
int shunt_dpi_send_logic (
const unsigned 
int 
sockfd,
const 
svLogic 
Logic
)
send verilog "byte"/C "char" over TCP/IP
",120:"
int shunt_dpi_recv_logic (
const unsigned 
int 
sockfd,
svLogic* 
Logic
)
fetch verilog "byte"/C "char" over TCP/IP
",121:"
int shunt_dpi_send_integer (
const unsigned 
int 
sockfd,
svLogicVecVal* 
Int
)
send  verilog "reg[31:0] 4 state aval,bval" over TCP/IP
",123:"
int shunt_dpi_send_time (
const unsigned 
int 
sockfd,
svLogicVecVal* 
Time
)
send  verilog "reg[31:0] 4 state aval,bval" over TCP/IP
",124:"
int shunt_dpi_recv_time (
const unsigned 
int 
sockfd,
svLogicVecVal* 
Time
)
fetch verilog "reg[31:0] 4 state aval,bval" from TCP/IP
",137:"
int shunt_dpi_send_string (
int 
sockid,
int 
size,
char
string
)
send SHUNT transaction with verilog string/C char* elements over TCP/IP
",138:"
int shunt_dpi_recv_string (
int 
sockid,
int 
size,
char** 
string
)
fetch SHUNT transaction with verilog string/C char* elements from TCP/IP
",326:"
typedef enum {
SHUNT_INT,
SHUNT_REAL,
SHUNT_SHORTREAL,
SHUNT_STRING,
SHUNT_A_STRUCTURE,
SHUNT_INTEGER,
SHUNT_BYTE,
SHUNT_REG,
SHUNT_BIT,
SHUNT_SHORTINT,
SHUNT_LONGINT,
SHUNT_HEADER_ONLY
} SHUNT_INSTR_ENUM
Integer 2 states:
",351:"
INLINE unsigned int shunt_prim_init_initiator(
const unsigned 
int 
portno
)
TCP/IP initiator initialization
",354:"
INLINE unsigned int shunt_prim_init_target(
const unsigned 
int 
portno,
const 
char 
*
hostname
)
TCP/IP target initialization
",363:"
INLINE int shunt_prim_send_int (
const 
int 
sockfd,
const 
int
Int
)
send verilog/C "int" data over TCP/IP
",364:"
INLINE int shunt_prim_recv_int (
const 
int 
sockfd,
int
Int
)
fetch verilog/C "int" data from TCP/IP socket
",365:"
INLINE int shunt_prim_send_double (
const 
int 
sockfd,
const 
double
Double
)
send verilog "double" over TCP/IP
",366:"
INLINE int shunt_prim_recv_double (
const 
int 
sockfd,
double
Double
)
fetch verilog "real"/"shortreal"/"realtime"/C "double"/"float","double" from TCP/IP
",369:"
INLINE int shunt_prim_send_short (
const 
int 
sockfd,
const short 
int
Short
)
send verilog "shortint"/C "short int" over TCP/IP
",370:"
INLINE int shunt_prim_recv_short (
const 
int 
sockfd,
short 
int
Short
)
fetch verilog "shortint"/C "short int" over TCP/IP
",371:"
INLINE int shunt_prim_send_long (
const 
int 
sockfd,
const 
shunt_long_t* 
Long
)
send verilog "longint"/C "long" over TCP/IP
",372:"
INLINE int shunt_prim_recv_long (
const 
int 
sockfd,
shunt_long_t* 
Long
)
fetch verilog "longint"/C "long" over TCP/IP
",373:"
INLINE int shunt_prim_send_byte (
const 
int 
sockfd,
const 
char
Byte
)
send verilog/C "Byte/Char" data over TCP/IP
",374:"
INLINE int shunt_prim_recv_byte (
const 
int 
sockfd,
char
Byte
)
fetch verilog/C "Byte/Char" data from TCP/IP socket
",376:"
INLINE int shunt_prim_recv_integer (
const unsigned 
int 
sockfd,
svLogicVecVal* 
Int
)
fetch verilog "reg[31:0] 4 state aval,bval" from TCP/IP
",382:"
INLINE unsigned int shunt_cs_init_initiator(
const unsigned 
int 
portno_in
)
TCP/IP initiator (server) initialization
",384:"
INLINE unsigned int shunt_cs_init_target(
const unsigned 
int 
portno_in ,
const 
char 
*
hostname
)
TCP/IP target (client) initialization
",407:"
INLINE int shunt_cs_send_byteV (
int 
sockid,
const 
cs_header* 
header,
const 
char
byteV
)
send SHUNT transaction with verilog byteV/string/C char* elements over TCP/IP
",419:"
INLINE shunt_long_t shunt_cs_get_cs_header_leader()
predefined hash functions for obtain the specific hash value.
",420:"
INLINE shunt_long_t shunt_cs_get_tlm_header_leader()
predefined hash functions for obtain the specific hash value.
",421:"
INLINE shunt_long_t shunt_cs_get_tlm_data_leader()
predefined hash functions for obtain the specific hash value.
",422:"
INLINE shunt_long_t shunt_cs_get_tlm_axi3_ext_leader()
predefined hash functions for obtain the specific hash value.
",423:"
INLINE shunt_long_t shunt_cs_get_tlm_axi3_signal_leader()
predefined hash functions for obtain the specific hash value.
"}); \ No newline at end of file diff --git a/doc/files5/shunt-py.html b/doc/files5/shunt-py.html new file mode 100644 index 00000000..caf7b0e8 --- /dev/null +++ b/doc/files5/shunt-py.html @@ -0,0 +1,294 @@ + + +shunt.py + + + + + + + + + +
+
cs_data_header
+
ctypes.​Structure
cs_data_header
+

A ctypes Structure representing  cs_data_header data header.  This structure contains fields for transaction payload sizes and data type.

  • data_type  SHUNT_INSTR_ENUM

  • trnx_payload_sizes  array of payload sizes, number of array elements are equal to n_payloads

see cs_header_t

+
+ +
+
Functions
+
+ +
+
print_structure
+
def print_structure(
self
)
+

Prints cs_data_header structure.

+
+ +
+
cs_header
+
ctypes.​Structure
cs_header
+

A ctypes Structure representing  cs_header communication protocol.  This structure includes fields for transaction type, ID, data type, and number of payloads.

  • trnx_type  user defined transaction attribute

  • trnx_id  user defined unique transaction number

  • data_type  SHUNT_INSTR_ENUM

  • n_payloads  number of data payloads (for Array number of vectors)

see cs_header cs_header_t

+
+ +
+
Functions
+
+ +
+
print_structure
+
def print_structure(
self
)
+

Prints cs_header structure.

+
+ +
+
SVpiVecVal
+
ctypes.​Structure
SVpiVecVal
+

A ctypes Structure representing a verilog vector  aval/bval of 4-state data type,32-bit signed integer LRM 6.11 Integer data types Contains two 32-bit unsigned integers.

bval aval | 4-state verilog value
----------|----------------------
0 0 | 0
0 1 | 1
1 0 | X
1 1 | Z
+
+ +
+
Shunt
+
Shunt
+

Python to System Verilog bridge

TODO:  shunt_py_tlm_send_command shunt_py_tlm_send_gp_transport shunt_py_tlm_recv_gp_transport shunt_py_tlm_recv_gp_header shunt_py_tlm_send_gp_header shunt_py_tlm_recv_axi3_header shunt_py_tlm_send_axi3_header shunt_py_tlm_recv_gp_data

TODO:  shunt_py_send_bitN shunt_py_recv_bitN  shunt_py_send_longV shunt_py_recv_longV shunt_py_send_data_header  shunt_py_recv_data_header

Not Implemented Features: shunt_py_send_realtime shunt_py_recv_realtime shunt_py_send_shortreal shunt_py_recv_shortreal

+
+ +
+
Functions
+
+ +
+
shunt_py_target_init
+
def shunt_py_target_init(
self,
portno,
hostname
)
+

TCP/IP target initialization

Parameters
  • portno: socket port

  • hostname: initiator name

Returns
  • socket id

See Also
NOTE

If portno_in = 0 -- assign a free client-server TCP port.  SHUNT_DEFAULT_TCP_PORT is reserved for the dynamic allocation of the client-server TCP port.

+
+ +
+
shunt_py_initiator_init
+
def shunt_py_initiator_init(
self,
portno
)
+
TCP/IP "one server"

"one target" point-to-point initiator initialization

Parameters
  • portno: socket port

Returns
  • socket id

See Also
NOTE

If portno_in = 0 -- assign a free client-server TCP port.  SHUNT_DEFAULT_TCP_PORT is reserved for the dynamic allocation of the client-server TCP port.

+
+ +
+
shunt_py_close_socket
+
def shunt_py_close_socket(
self,
fd
)
+

Terminates TCP socket

Parameters
  • fd: socket id

Returns
  • N/A

+
+ +
+
shunt_py_unblock_socket
+
def shunt_py_unblock_socket(
self,
flag,
fd
)
+

Sets TCP socket unblocked mode

Parameters
- flag: 1/0

unblocked(default)/blocked - fd: socket id

Returns
  • N/A

+
+ +
+
shunt_py_tcp_nodelay_socket
+
def shunt_py_tcp_nodelay_socket(
self,
flag,
sockfd
)
+

Enable/disable Nagle algorithm (TCP_NODELAY)

Parameters
- flag: 1/0

enable/disable Nagle algorithm (TCP_NODELAY) - sockfd: socket id

Returns
  • N/A

+
+ +
+
shunt_py_get_status_socket
+
def shunt_py_get_status_socket(
self,
fd,
event
)
+

Returns status for <fd> TCP socket <event>

Parameters
  • fd: socket id

  • event: short event - the <event> mask is specifying following

  • 0 - is equal to POLLIN, data is ready to recv()

  • 1 - is equal to POLLOUT, socket can send() data to this socket without blocking

  • else is equal to POLLNVAL, function returns "process failed" status;

Returns
  • socket event status

  • "0" - No <event>

  • "-1" - <event> process has failed

  • "1" - <event> occurs

+
+ +
+
shunt_py_listener_init
+
def shunt_py_listener_init(
self,
portno
)
+

Multi-Slave TCP IP initialization, create TCP/IP a parent(listener) and start listening for client connections

Parameters
  • portno: socket port

Returns
- socket id

parent socket id

+
+ +
+
shunt_py_tcp_connect
+
def shunt_py_tcp_connect(
self,
parentfd
)
+

Multi-Slave TCP IP initialization, establish TCP/IP initiator-target connection

Parameters
- parentfd: socket id

parent socket id

Returns
- socket id

child socket id

+
+ +
+
shunt_py_tcp_get_port
+
def shunt_py_tcp_get_port(
self,
socket
)
+

Finds TCP/IP port with the specified socket id

Parameters
  • socket: socket id

Returns
  • a corresponding TCP/IP port

Also see shunt_cs_update_dynamic_port

+
+ +
+
shunt_py_tcp_parent_init_initiator_dpa
+
def shunt_py_tcp_parent_init_initiator_dpa(
self
)
+

PY equivalent of the shunt_cs_tcp_parent_init_initiator_dp

Parameters
  • N/A

Returns
- socket id

DPA parent socket id

+
+ +
+
shunt_py_send_short
+
def shunt_py_send_short(
self,
sockfd,
Short
)
+

Send Verilog "shortint" / C "short int" data over TCP/IP

Parameters
  • sockfd: socket id

  • Short: data

Returns
  • number of bytes have been sent : success > 0

See Also
+
+ +
+
shunt_py_recv_short
+
def shunt_py_recv_short(
self,
sockfd
)
+

Fetch Verilog "shortint"/C "short int" data from TCP/IP socket

Parameters
  • sockfd: socket id

  • Short: data

Returns
  • number of bytes have been received : success > 0

  • Short: data

See Also
+
+ +
+
shunt_py_send_long
+
def shunt_py_send_long(
self,
sockfd,
Long
)
+

Send Verilog "longint" / C "long" data over TCP/IP

Parameters
  • sockfd: socket id

  • Long: data

Returns
  • number of bytes have been sent : success > 0

See Also
+
+ +
+
shunt_py_recv_long
+
def shunt_py_recv_long(
self,
sockfd
)
+

Fetch Verilog "longint" / C "long" data from TCP/IP socket

Parameters
  • sockfd: socket id

Returns
  • number of bytes have been received : success > 0

  • Long: data

See Also
+
+ +
+
shunt_py_send_int
+
def shunt_py_send_int(
self,
sockfd,
Int
)
+

Send Verilog/C "int" data over TCP/IP

Parameters
  • sockfd: socket id

  • Int: data

Returns
  • number of bytes have been sent : success > 0

See Also
+
+ +
+
shunt_py_recv_int
+
def shunt_py_recv_int(
self,
sockfd
)
+

Fetch Verilog/C "int" data from TCP/IP socket

Parameters
  • sockfd: socket id

Returns
  • number of bytes have been received : success > 0

  • Int: data

See Also
+
+ +
+
shunt_py_send_real
+
def shunt_py_send_real(
self,
sockfd,
Real
)
+

Send Verilog "real"/C "double" data over TCP/IP

Parameters
  • sockfd: socket id

  • Real: data

Returns
  • number of bytes have been sent : success > 0

See Also
+
+ +
+
shunt_py_recv_real
+
def shunt_py_recv_real(
self,
sockfd
)
+

Fetch Verilog "real"/C "double" data from TCP/IP socket

Parameters
  • sockfd: socket id

Returns
  • number of bytes have been sent : success > 0

  • Real: data

See Also
+
+ +
+
shunt_py_send_byte
+
def shunt_py_send_byte(
self,
sockfd,
Byte
)
+

Send Verilog "byte"/C "char" data over TCP/IP

Parameters
  • sockfd: socket id

  • Byte: data

Returns
  • number of bytes have been sent : success = 1

See Also
+
+ +
+
shunt_py_recv_byte
+
def shunt_py_recv_byte(
self,
sockfd
)
+

Fetch verilog "byte"/C "char" over TCP/IP

Parameters
  • sockfd: socket id

Returns
  • number of bytes have been received: success = 1

  • Byte - data

+
+ +
+
shunt_py_send_bit
+
def shunt_py_send_bit(
self,
sockfd,
Bit
)
+

Send Verilog "byte"/C "char" data over TCP/IP

Parameters
  • sockfd: socket id

  • Bit: data

Returns
  • number of bytes have been sent : success = 1

See Also
+
+ +
+
shunt_py_recv_bit
+
def shunt_py_recv_bit(
self,
sockfd
)
+

Fetch Verilog "byte"/C "char" data from TCP/IP socket

Parameters
  • sockfd: socket id

Returns
  • number of bytes have been sent : success = 1

  • Bit: data

See Also
+
+ +
+
shunt_py_send_reg
+
def shunt_py_send_reg(
self,
sockfd,
Reg
)
+

Send Verilog "reg"/C "char" data over TCP/IP

Parameters
  • sockfd: socket id

  • Reg: data

Returns
  • number of bytes have been sent : success = 1

See Also
+
+ +
+
shunt_py_recv_reg
+
def shunt_py_recv_reg(
self,
sockfd
)
+

Fetch Verilog "reg"/C "char" data from TCP/IP socket

Parameters
  • sockfd: socket id

Returns
  • number of bytes have been sent : success = 1

  • Reg: data

See Also
+
+ +
+
shunt_py_send_logic
+
def shunt_py_send_logic(
self,
sockfd,
Logic
)
+

Send Verilog "byte"/C "char" data over TCP/IP

Parameters
  • sockfd: socket id

  • Logic: data

Returns
  • number of bytes have been sent : success = 1

See Also
+
+ +
+
shunt_py_recv_logic
+
def shunt_py_recv_logic(
self,
sockfd
)
+

Fetch Verilog "byte"/C "char" data from TCP/IP socket

Parameters
  • sockfd: socket id

Returns
  • number of bytes have been sent : success = 1

  • Logic: data

See Also
+
+ +
+
shunt_py_recv_integer
+
def shunt_py_recv_integer(
self,
sockfd
)
+

Fetch Verilog "reg[31:0] 4 state aval,bval" data from TCP/IP

Parameters
  • sockfd: socket id

Returns
  • number of bytes have been received : success > 0

  • Integer: data

See Also
+
+ +
+
shunt_py_send_time
+
def shunt_py_send_time(
self,
sockfd,
Time
)
+

Send Verilog "reg[31:0] 4 state aval,bval" data over TCP/IP

Parameters
  • sockfd: socket id

  • Time: data

Returns
  • number of bytes have been sent : success > 0

See Also
+
+ +
+
shunt_py_recv_time
+
def shunt_py_recv_time(
self,
sockfd
)
+

Fetch Verilog "reg[31:0] 4 state aval,bval" data from TCP/IP

Parameters
  • sockfd: socket id

Returns
  • number of bytes have been received : success > 0

  • Time: data

See Also
+
+ +
+
shunt_py_send_string
+
def shunt_py_send_string(
self,
sockfd,
String
)
+

Send SHUNT transaction with verilog string/C char* elements over TCP/IP

Parameters
  • sockid: socket id

  • size: number of string elements

  • string: data

Returns
  • number of elements have been sent : success > 0

See Also
+
+ +
+
shunt_py_recv_string
+
def shunt_py_recv_string(
self,
sockfd,
size
)
+

Fetch SHUNT transaction with verilog string/C char* elements from TCP/IP

Parameters
  • sockid: socket id

  • size: number of string elements

Returns
  • number of elements have been received: success > 0

  • String: data

See Also
+
+ +
+
shunt_py_get_cs_header_id
+
def shunt_py_get_cs_header_id(
self,
sockfd
)
+

Predefined hash functions for obtaining the specific hash value.

Parameters
  • N/A

Returns
  • long: hash value

See Also
+
+ +
+
shunt_py_tlm_header_id
+
def shunt_py_tlm_header_id(
self,
sockfd
)
+

Predefined hash functions for obtaining the specific hash value.

Parameters
  • N/A

Returns
  • long: hash value

See Also
+
+ +
+
shunt_py_tlm_data_id
+

Predefined hash functions for obtaining the specific hash value.

Parameters
  • N/A

Returns
  • long: hash value

See Also
+
+ +
+
shunt_py_tlm_axi3_ext_id
+
def shunt_py_tlm_axi3_ext_id(
self,
sockfd
)
+

Predefined hash functions for obtaining the specific hash value.

Parameters
  • N/A

Returns
  • long: hash value

See Also
+
+ +
+
shunt_py_tlm_signal_id
+
def shunt_py_tlm_signal_id(
self,
sockfd
)
+

Predefined hash functions for obtaining the specific hash value.

Parameters
  • N/A

Returns
  • long: hash value

See Also
+
+ +
+
shunt_py_hash
+
def shunt_py_hash(
self,
string
)
+

Simple hash function.

Parameters
  • s: hash key

Returns
  • hash value

Example Usage

hash_key = "example_key" Replace with your hash key hash_value = shunt_dpi_hash(hash_key) print(f"Hash value for key '{hash_key}': {hash_value}")

+
+ +
+
shunt_py_send_header
+
def shunt_py_send_header(
self,
sockfd,
h
)
+

Send SHUNT header over TCP/IP.

Parameters
  • sockid: socket id from init server/target

  • h: cs_header structure

Returns
  • number of elements have been sent: success > 0

+
+ +
+
shunt_py_recv_header
+
def shunt_py_recv_header(
self,
sockfd
)
+

Fetch SHUNT transaction header from TCP/IP socket.

Parameters
  • sockid: socket id from init server/target

Returns
  • number of elements have been received: success > 0

  • h: cs_header structure

+
+ + \ No newline at end of file diff --git a/doc/menu/classes.js b/doc/menu/classes.js new file mode 100644 index 00000000..02c54444 --- /dev/null +++ b/doc/menu/classes.js @@ -0,0 +1 @@ +NDMenu.OnSectionLoaded("classes.js",[[1,"cs_data_header"],[1,"cs_header"],[1,"Shunt"],[1,"SVpiVecVal"]]); \ No newline at end of file diff --git a/doc/search/keywords/007300760070.js b/doc/search/keywords/007300760070.js new file mode 100644 index 00000000..46efee6f --- /dev/null +++ b/doc/search/keywords/007300760070.js @@ -0,0 +1 @@ +NDSearch.OnPrefixDataLoaded("svp",["Class"],[["SVpiVecVal",,[[,,,,0,"File5:shunt.py:SVpiVecVal","PythonClass:SVpiVecVal"]]]]); \ No newline at end of file diff --git a/doc/styles/Default/images/theme-menu-autolightblack.svg b/doc/styles/Default/images/theme-menu-autolightblack.svg new file mode 100644 index 00000000..edaf9be7 --- /dev/null +++ b/doc/styles/Default/images/theme-menu-autolightblack.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/doc/styles/Default/images/theme-menu-autolightdark.svg b/doc/styles/Default/images/theme-menu-autolightdark.svg new file mode 100644 index 00000000..ea70cc9e --- /dev/null +++ b/doc/styles/Default/images/theme-menu-autolightdark.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + +