Skip to content

derrickgw/xilinx-reports-plugin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

xilinx-reports Jenkins plugin

Jenkins Plugin for various reporting that would be useful for an FPGA project.

Vivado Infos are reported separately from Warnings/Errors to reduce noise in the warnings plot. Info parsing is provided to see extreme trends that indicate a problem (often a sudden decrease in the number of messages).

Example for plotting BRAM, Slice and DSP utilization in a pipeline:

node {
    stage('Publish'){
        xilinxUtilization([
            xilinxParser(
                report: 'utilization.rpt', parserTitle: 'Utilization', parserUniqueName: 'xilinx-utilization',
                graphConfiguration: [
                    [graphCaption: 'BRAMs', graphDataList: 'Block_RAM_Tile'],
                    [graphCaption: 'Slices', graphDataList: 'Slice_LUTs,Slice_Registers,LUT_Flip_Flop_Pairs'],
                    [graphCaption: 'DSPs', graphDataList: 'DSPs']]
            )
        ])
    }
}

Same Example in JobDSL:

publishers {
  xilinxUtilization {
    reportName '**/utilization.rpt'
    graph {
      graphCaption  'DSPs'
      graphDataList 'DSPs'
    }
    graph {
      graphCaption  'BRAM'
      graphDataList 'Block_RAM_Tile'
    }
    graph {
      graphCaption  'Slices'
      graphDataList 'Slice_LUTs,Slice_Registers,LUT_Flip_Flop_Pairs'
    }
  }
}

Example for reporting vivado warnings:

node
{
    stage('publish')
    {
        recordIssues tools: [[$class: 'VivadoWarningsTool', pattern: 'vivado.log']],
            filters: [
                excludeFile('.*/prj/vivado/.*\.srcs/sources_1/ip/.*'),
                excludeType('Synth 8-6014')
            ]
    }
}