灰度化
更新于 2015.05.15
设计
灰度化
版本
1.0
更改于
2015-05-12
源文件
IP-GUI

功能
将RGB图像转换文灰度图。用户可以自己配置使用的乘法器。将会在输入使能后的mul_delay + 2个周期后给出第一个数据。
文件
| 名字 | 功能 |
|---|---|
| Garying.v | 顶层文件 |
| Gary_TB.sv | 测试平台 |
| MultiplierRedx0d299.xci | Xilinx IP文件。 |
| MultiplierRedx0d299_funcsim.v | 用于功能仿真的模型文件。 |
| MultiplierGreenx0d587.xci | Xilinx IP文件。 |
| MultiplierGreenx0d587_funcsim.v | 用于功能仿真的模型文件。 |
| MultiplierBluex0d114.xci | Xilinx IP文件。 |
| MultiplierBluex0d114_funcsim.v | 用于功能仿真的模型文件。 |
参数
| 名字 | 类型 | 范围 | 默认值 | 说明 |
|---|---|---|---|---|
| work_mode | 无符号 | 0为流水线模式,1为请求响应模式 | 0 | 模块的工作模式。 |
| color_width | 无符号 | 1 - 12 | 8 | 色彩位宽。 |
| mul_delay | 无符号 | 取决于乘法器的配置。 | 3 | 乘法器延迟 |
端口
| 名字 | 端口 | 类型 | 范围 | 默认值 | 说明 | clk | 输入 | 无符号 | 无 | 无 | Clock. |
|---|---|---|---|---|---|
| rst_n | 输入 | 无符号 | 无 | 无 | 复位,低有效。 |
| in_enable | 输入 | 无符号 | 无 | 无 | 输入数据使能,在流水线模式下,它是另一个复位信号,在请求响应模式下,只有在它有效的时候in_data才会被真正地改变。 |
| in_data | 输入 | 无符号 | color_width - 1 : 0 | 无 | 输入数据,必须和in_enable同步输入。 |
| out_ready | output | 无符号 | 无 | 无 | 输出数据有效,在两种模式下,这个信号都会在out_data可以被读取的时候有效。 |
| out_data | output | 无符号 | color_width - 1 : 0 | 无 | 输出数据,将会和out_ready同步输出。 |
子模块
| 名字 | 类型 | 说明 |
|---|---|---|
| MulRed | MultiplierRedx0d299 | 12位无符号数和0.299的定点乘法器,被用于红色通道的计算。你可以自己配置这个乘法器,然后更改"mul_delay",但所有的乘法器必须拥有相同的流水线级数,并不能更改端口的配置! |
| MulGreen | MultiplierGreenx0d587 | 12位无符号数和0.587的定点乘法器,被用于绿色通道的计算。你可以自己配置这个乘法器,然后更改"mul_delay",但所有的乘法器必须拥有相同的流水线级数,并不能更改端口的配置! |
| MulBlue | MultiplierBluex0d114 | 12位无符号数和0.113的定点乘法器,被用于蓝色通道的计算。你可以自己配置这个乘法器,然后更改"mul_delay",但所有的乘法器必须拥有相同的流水线级数,并不能更改端口的配置! |
仿真
测试仅仅支持RGB模式的图像 !
波形
流水线模式

请求响应模式

原始图像

结果图像

左侧为请求响应模式下的HDL功能仿真结果,中间为流水线模式下的HDL功能仿真结果,右侧为软件仿真结果
PSNR
| 1 | 2 | 3 | Total |
|---|---|---|---|
| 46.73 | 46.96 | 46.83 | 46.84 |
资源消耗
| Slice LUTs* | Slice Registers | DSPs |
|---|---|---|
| 28 | 26 | 3 |
时序
最大的数据路径延迟为2.265ns,所以:
FMax = 441.50MHz
感谢
用于仿真的图像:
041-尾翼
月岡月穂-星を呑む
LM7-xxxまとめ