Difference between reg, wire, logic in SystemVerilog
Wire Can be used for input, output, inout Multiple drivers, No drivers cause x Usage: Wire variable = value; Assign variable = value; Can be used to connect module instances Reg Can be used only for...
View ArticleGeneral Purpose Preprocessor in Perl
Here is a preprocessor in perl, primarily for Verilog, SystemVerilog, but may be used for any language. There are programs with a lot of repetitive text. Language features like functions, objects can...
View ArticleSystemVerilog Array of Interfaces
// Viewing Array of interfaces in waveform viewer(dve) // Notes added inline in the below example interface my_if(input clk); logic [31:0] addr; logic [31:0] data; endinterface module dut(input xx,...
View ArticleObject Oriented Programming in Perl
Implementation of a Simple Tree Data Structure using OOP-Perl. Screenshot is used instead of text file for easy reading. Filed under: Bookmarks Tagged: array, bless, hash, lisp, module, oop, package,...
View ArticlePreprocessor for Verilog, SystemVerilog
DownLoad PDF Version Here Contents Introduction Operation Syntax, Keywords Command Line options Example of input file Output of vpp.pl Complete script: vpp.pl Introduction This is a generic...
View ArticleIdentity Monad in Perl
#!/usr/bin/perl sub wrap_value { my $value=shift; return sub { return $value; }} sub bind_func { my ($value,$func)=@_; return $func->($value);} sub lift_func { my $func=shift; return sub { my...
View ArticleLambda Calculus in Perl
#!/usr/bin/perl # lambda expression = anonymous subroutine # all subroutines defined in this file are anonymous my $apply = sub { # lift my ($func,@args)=@_; sub {$func->(@args,@_)} # bind }; my...
View ArticlePreprocess text with embedded perl code
Create my first project at Github: This script can be downloaded from https://github.com/agraja/text2perl/blob/master/text2perl.pl #!/usr/bin/perl # Tiny preprocessor: # Example: Paste this example in...
View ArticleCompilation error at UVM factory registration macros
package simple_pkg; import uvm_pkg::*; `include “uvm_macros.svh” class my_class extends uvm_object; `uvm_object_utils(my_class) function new(string name=””,int additional_arg); super.new(name);...
View ArticleShell: No such file or directory, but the file exists
Example File: # File Name : tools.csh source $PROJ_DIR/scripts/getOS.csh Commands run from terminal: $> echo $SHELL tcsh $> pwd project1 $> cd work $> source ../tools.csh...
View Article