Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagebash
# Download the driver package from github.com
$ wget https://github.com/slaclab/aes-stream-drivers/archive/v1.0.1.tar.gz
$ tar -zxvf v1.0.1.tar.gz

# go to the pgpcard directory and build the driver:
$ cd aes-stream-drivers-1.0.1/pgpcard/driver/
$ make

# You will end up with a file pgpcard.ko
# Load the driver as root:
$ sudo insmod pgpcard.ko

# Update the permissions to the device such that 
# you won't need sudo access to run the software application
$ sudo chmod 666 /dev/pgpcard_*

# Verify the card loaded:
$ cat /proc/pgpcard_0

# Scroll up and you will see a dump of information for "lane 0" like this
-------------- Lane 0 --------------------
             LoopBack : 0
         LocLinkReady : 1 
         RemLinkReady : 1 
              RxReady : 1
              TxReady : 1
              RxCount : 0
           CellErrCnt : 0
          LinkDownCnt : 1
           LinkErrCnt : 0
              FifoErr : 0
              RemData : 0x00
        RemBuffStatus : 0x00
# "LocLinkReady : 1" means Link up on local side
# "RemLinkReady : 1" means Link up on remote side

# The aes-stream-drivers/include directory will be needed for the next step. 
# Make note of the full directory path (used for "AES_INCLUDE")

...

Code Block
languagebash
$ make

Run The Test Code

Code Block
languagebash
# First dump the status register. This will include the firmware version and build string:

...


$ bin/dumpStatus

...


	FwVersion 

...

 

...

 

...

= 0x00000001
	BuildStamp 

...

 

...

= Kcu105Pgp: Vivado v2016.4, x86_64, Built Wed May 

...

 3 13:52:04 PDT 2017 by rherbst
	HeartBeat  

...

 

...

= 0x00000000
	Scratchpad 

...

 

...

= 0x00000000

...


	PRBS Length = 255

...



# 

...

In one terminal start the data dump process:

...


$ bin/dumpData

...



# In another terminal start the routine which periodically writes a register to generate a data frame:

...


$ bin/genData

...



# The output of the dumpData terminal show show:

...


	Got Data. Size=1024, error=0 

...


	Got Data. Size=1024, error=0 

...


	Got Data. Size=1024, error=0 

...


	Got Data. Size=1024, error=0 

...


	Got Data. Size=1024, error=0 

...


	Got Data. Size=1024, error=0 

...


	Got Data. Size=1024, error=0 

...


	Got Data. Size=1024, error=0 

...


	Got Data. Size=1024, error=0 

...


	Got Data. Size=1024, error=0 

...


	Got Data. Size=1024, error=0

...


	 ...

...

Additional Links

Git hub repositories for firmware and drivers:

Information about the register access protocol used in the CPIX camera and development board:

...

Contact

 

 

 

 

 Ryan Herbst
rherbst@slac.stanford.edu
Office: 650-926-4911
Mobile: 408-489-6582