Khối này được tỏc giả thực hiện trờn Xilinx System Generator (Mục 4.1.1) sau đú tổng hợp trờn ISE và mụ phỏng giản đồ thời gian (test bench) trờn ModelSim XE.
- Giản đồ thời gian (Hỡnh 5.7):
Hỡnh 5.7: Giản đồ thời gian thực hiện khối color_conv_cw
- Kết quả thực hiện tổng hợp:
Thực hiện tổng hợp trờn dũng chip Virtex5(xc5vlx50t-3ff1136) thu được bảng kết quả tổng hợp (Bảng 5.1):
Bảng 5.1: Kết quả tổng hợp khối color_conv_cw trờn dũng chip V5 jpeg_watermarking Project Status (10/15/2009 - 16:47:10)
Module Name: color_conv_cw • Errors: No Errors
Target Device: xc5vlx50t-3ff1136 • Warnings: 181 Warnings
Device Utilization Summary (estimated values) [-]
Logic Utilization Used Available Utilization
Number of Slice Registers 97 28800 0%
Number of Slice LUTs 109 28800 0%
Number of fully used LUT-FF pairs 51 155 32%
Number of bonded IOBs 49 480 10%
Number of BUFG/BUFGCTRLs 1 32 3%
Timing Summary: --- Speed Grade: -3
Minimum period: 1.552ns (Maximum Frequency: 644.330MHz) Minimum input arrival time before clock: 5.010ns
Maximum output required time after clock: 2.775ns Maximum combinational path delay: 4.254ns
Thực hiện tổng hợp trờn dũng chip Spartan3E(xc3s500e-5fg320) thu được bảng kết quả tổng hợp (Bảng 5.2):
Bảng 5.2: Kết quả tổng hợp khối color_conv_cw trờn dũng chip S3E jpeg_watermarking Project Status (10/15/2009 - 16:45:23)
Project File: jpeg_watermarking.ise Implementation State: Synthesized
Module Name: color_conv_cw • Errors: No Errors
Target Device: xc3s500e-5fg320 • Warnings: 181 Warnings
Device Utilization Summary (estimated values) [-]
Logic Utilization Used Available Utilization
Number of Slices 78 4656 1%
Number of Slice Flip Flops 97 9312 1%
Number of 4 input LUTs 118 9312 1%
Number of bonded IOBs 49 232 21%
Number of GCLKs 1 24 4%
Timing Summary: --- Speed Grade: -5
Minimum period: 3.492ns (Maximum Frequency: 286.369MHz) Minimum input arrival time before clock: 9.502ns
Maximum output required time after clock: 4.040ns Maximum combinational path delay: 8.372ns
5.2.1.2. Khối biến đổi tốc độ lấy mẫu màu
Khối này được tạo ra từ Xilinx IP core và được mụ tả bổ xung sử dụng trong luận văn.
- Giản đồ thời gian và kết quả thưc hiện:
Hỡnh 5.8: Giản đồ thời gian thực hiện khối color_resampler444to420
- Kết quả thực hiện tổng hợp:
Thực hiện tổng hợp trờn dũng chip Virtex5(xc5vlx50t-3ff1136) thu được bảng kết quả tổng hợp (Bảng 5.3):
Bảng 5.3: Kết quả tổng hợp khối color_resampler444to420 trờn dũng chip V5 jpeg_watermarking Project Status (10/15/2009 - 14:35:07)
Project File: jpeg_watermarking.ise Implementation State: Synthesized
Module Name: color_resampler444to420 • Errors: No Errors
Target Device: xc5vlx50t-3ff1136 • Warnings: 248 Warnings
Device Utilization Summary (estimated values) [-]
Logic Utilization Used Available Utilization
Number of Slice Registers 100 28800 0%
Number of Slice LUTs 90 28800 0%
Number of fully used LUT-FF pairs 88 102 86%
Number of bonded IOBs 42 480 8%
Number of BUFG/BUFGCTRLs 1 32 3%
Timing Summary: --- Speed Grade: -3
Minimum period: 1.705ns (Maximum Frequency: 586.441MHz) Minimum input arrival time before clock: 1.223ns
Maximum output required time after clock: 2.775ns Maximum combinational path delay: No path found
Thực hiện tổng hợp trờn dũng chip Spartan3E(xc3s500e-5fg320) thu được bảng kết quả tổng hợp (Bảng 5.4):
Bảng 5.4: Kết quả tổng hợp khối color_resampler444to420 trờn dũng chip S3E jpeg_watermarking Project Status (10/15/2009 - 14:18:53)
Project File: jpeg_watermarking.ise Implementation State: Synthesized
Module Name: color_resampler444to420 Errors: No Errors
Target Device: xc3s500e-5fg320 Warnings: 248 Warnings
Device Utilization Summary (estimated values) [-]
Logic Utilization Used Available Utilization
Number of Slices 58 4656 1%
Number of Slice Flip Flops 100 9312 1%
Number of 4 input LUTs 90 9312 0%
Number of GCLKs 1 24 4% Timing Summary:
--- Speed Grade: -5
Minimum period: 3.492ns (Maximum Frequency: 286.369MHz) Minimum input arrival time before clock: 1.829ns
Maximum output required time after clock: 4.040ns Maximum combinational path delay: No path found
5.2.1.3. Khối thực hiện biến đổi DCT_2D 8x8
- Giản đồ thời gian:
- Kết quả thực hiện tổng hợp: Thực hiện tổng hợp trờn dũng chip Virtex5(xc5vlx50t-3ff1136) thu được bảng kết quả tổng hợp (Bảng 5.5):
Bảng 5.5: Kết quả tổng hợp khối DCT8x8 trờn dũng chip V5 jpeg_watermarking Project Status (10/15/2009 - 14:59:15)
Project File: jpeg_watermarking.ise Implementation State: Synthesized
Module Name: dct8x8 • Errors: No Errors
Target Device: xc5vlx50t-3ff1136 • Warnings: 1996 Warnings
Device Utilization Summary (estimated values) [-]
Logic Utilization Used Available Utilization
Number of Slice Registers 265 28800 0%
Number of Slice LUTs 373 28800 1%
Number of fully used LUT-FF pairs 250 388 64%
Number of bonded IOBs 17 480 3%
Number of BUFG/BUFGCTRLs 1 32 3%
Number of DSP48Es 4 48 8%
Timing Summary: --- Speed Grade: -3
Minimum period: 5.192ns (Maximum Frequency: 192.600MHz) Minimum input arrival time before clock: 1.844ns
Maximum output required time after clock: 4.506ns Maximum combinational path delay: No path found
Thực hiện tổng hợp trờn dũng chip Spartan3E(xc3s500e-5fg320) thu được bảng kết quả tổng hợp (Bảng 5.6):
Bảng 5.6: Kết quả tổng hợp khối DCT_2D 8x8 trờn dũng chip S3E jpeg_watermarking Project Status (10/15/2009 - 15:04:29)
Project File: jpeg_watermarking.ise Implementation State: Synthesized
Module Name: dct8x8 • Errors: No Errors
Target Device: xc3s500e-5fg320 • Warnings: 3915 Warnings
Device Utilization Summary (estimated values) [-]
Logic Utilization Used Available Utilization
Number of Slice Flip Flops 257 9312 2%
Number of 4 input LUTs 462 9312 4%
Number of bonded IOBs 17 232 7%
Number of MULT18X18SIOs 4 20 20%
Number of GCLKs 1 24 4%
Timing Summary: --- Speed Grade: -5
Minimum period: 8.869ns (Maximum Frequency: 112.748MHz) Minimum input arrival time before clock: 3.227ns
Maximum output required time after clock: 7.749ns Maximum combinational path delay: No path found
5.2.1.4. Khối lượng tử húa
- Giản đồ thời gian:
- Kết quả thực hiện tổng hợp:
Thực hiện tổng hợp trờn dũng chip Virtex5(xc5vlx50t-3ff1136) thu được bảng kết quả tổng hợp (Bảng 5.7):
Bảng 5.7: Kết quả tổng hợp khối lượng tử húa (Quant) trờn dũng chip V5 jpeg_watermarking Project Status (10/15/2009 - 15:31:40)
Project File: jpeg_watermarking.ise Implementation State: Synthesized
Module Name: quant • Errors: No Errors
Target Device: xc5vlx50t-3ff1136 • Warnings: 16 Warnings
Device Utilization Summary (estimated values) [-]
Logic Utilization Used Available Utilization
Number of Slice Registers 7 28800 0%
Number of Slice LUTs 54 28800 0%
Number of fully used LUT-FF pairs 7 54 12%
Number of bonded IOBs 30 480 6%
Number of BUFG/BUFGCTRLs 1 32 3%
Number of DSP48Es 1 48 2%
Timing Summary: --- Speed Grade: -3
Minimum period: 2.435ns (Maximum Frequency: 410.689MHz) Minimum input arrival time before clock: 2.815ns
Maximum output required time after clock: 6.955ns Maximum combinational path delay: No path found
Thực hiện tổng hợp trờn dũng chip Spartan3E(xc3s500e-5fg320) thu được bảng kết quả tổng hợp (Bảng 5.8):
Bảng 5.8: Kết quả tổng hợp khối lượng tử húa (Quant) trờn dũng chip S3E jpeg_watermarking Project Status (10/15/2009 - 15:33:50)
Project File: jpeg_watermarking.ise Implementation State: Synthesized
Module Name: quant • Errors: No Errors
Target Device: xc3s500e-5fg320 • Warnings: 16 Warnings
Device Utilization Summary (estimated values) [-]
Number of Slices 56 4656 1%
Number of Slice Flip Flops 19 9312 0%
Number of 4 input LUTs 108 9312 1%
Number of bonded IOBs 30 232 12%
Number of MULT18X18SIOs 1 20 5%
Number of GCLKs 1 24 4%
Timing Summary: --- Speed Grade: -5
Minimum period: 5.314ns (Maximum Frequency: 188.187MHz) Minimum input arrival time before clock: 4.782ns
Maximum output required time after clock: 11.400ns Maximum combinational path delay: No path found
5.2.1.5. Khối quột zigzag
- Giản đồ thời gian:
- Kết quả thực hiện tổng hợp:
Thực hiện tổng hợp trờn dũng chip Virtex5(xc5vlx50t-3ff1136) thu được bảng kết quả tổng hợp (Bảng 5.9):
Bảng 5.9: Kết quả tổng hợp khối quột zigzag trờn dũng chip V5 jpeg_watermarking Project Status (10/15/2009 - 15:49:00)
Project File: jpeg_watermarking.ise Implementation State: Synthesized
Module Name: zigzag_scan • Errors: No Errors
Target Device: xc5vlx50t-3ff1136 • Warnings: 3 Warnings
Device Utilization Summary (estimated values) [-]
Logic Utilization Used Available Utilization
Number of Slice Registers 796 28800 2%
Number of Slice LUTs 346 28800 1%
Number of fully used LUT-FF pairs 26 1116 2%
Number of bonded IOBs 30 480 6%
Number of BUFG/BUFGCTRLs 1 32 3%
Timing Summary: --- Speed Grade: -3
Minimum period: 2.727ns (Maximum Frequency: 366.757MHz) Minimum input arrival time before clock: 2.186ns
Maximum output required time after clock: 2.775ns Maximum combinational path delay: No path found
Thực hiện tổng hợp trờn dũng chip Spartan3E(xc3s500e-5fg320) thu được bảng kết quả tổng hợp (Bảng 4.10):
Bảng 5.10: Kết quả tổng hợp khối quột zigzag trờn dũng chip S3E jpeg_watermarking Project Status (10/15/2009 - 15:46:31)
Project File: jpeg_watermarking.ise Implementation State: Synthesized
Module Name: zigzag_scan • Errors: No Errors
Target Device: xc3s500e-5fg320 • Warnings: 3 Warnings
Device Utilization Summary (estimated values) [-]
Logic Utilization Used Available Utilization
Number of Slice Flip Flops 796 9312 8%
Number of 4 input LUTs 532 9312 5%
Number of bonded IOBs 30 232 12%
Number of GCLKs 1 24 4%
Timing Summary: --- Speed Grade: -5
Minimum period: 5.771ns (Maximum Frequency: 173.292MHz) Minimum input arrival time before clock: 4.252ns
Maximum output required time after clock: 4.040ns Maximum combinational path delay: No path found
5.2.1.6. Khối mó húa bước chạy RLE
- Giản đồ thời gian:
- Kết quả thực hiện tổng hợp:
Thực hiện tổng hợp trờn dũng chip Virtex5(xc5vlx50t-3ff1136) thu được bảng kết quả tổng hợp (Bảng 5.11):
Bảng 5.11: Kết quả tổng hợp khối mó húa bước chạy RLE trờn dũng chip V5 jpeg_watermarking Project Status (10/15/2009 - 16:06:03)
Project File: jpeg_watermarking.ise Implementation State: Synthesized
Module Name: rle_en • Errors: No Errors
Target Device: xc5vlx50t-3ff1136 • Warnings: 4 Warnings
Device Utilization Summary (estimated values) [-]
Logic Utilization Used Available Utilization
Number of Slice Registers 81 28800 0%
Number of Slice LUTs 76 28800 0%
Number of fully used LUT-FF pairs 49 108 45%
Number of bonded IOBs 49 480 10%
Number of BUFG/BUFGCTRLs 1 32 3%
Timing Summary: --- Speed Grade: -3
Minimum period: 2.573ns (Maximum Frequency: 388.629MHz) Minimum input arrival time before clock: 1.728ns
Maximum output required time after clock: 2.864ns Maximum combinational path delay: No path found
Thực hiện tổng hợp trờn dũng chip Spartan3E(xc3s500e-5fg320) thu được bảng kết quả tổng hợp (Bảng 5.12):
Bảng 5.12: Kết quả tổng hợp khối mó húa bước chạy RLE trờn dũng chip S3E jpeg_watermarking Project Status (10/15/2009 - 16:10:35)
Project File: jpeg_watermarking.ise Implementation State: Synthesized
Module Name: rle_en • Errors: No Errors
Target Device: xc3s500e-5fg320 • Warnings: 4 Warnings
Device Utilization Summary (estimated values) [-]
Logic Utilization Used Available Utilization
Number of Slice Flip Flops 81 9312 0%
Number of 4 input LUTs 73 9312 0%
Number of bonded IOBs 49 232 21%
Number of GCLKs 1 24 4%
Timing Summary: --- Speed Grade: -5
Minimum period: 5.505ns (Maximum Frequency: 181.668MHz) Minimum input arrival time before clock: 4.405ns
Maximum output required time after clock: 4.620ns Maximum combinational path delay: No path found
5.2.1.7. Khối mó húa Huffman
- Giản đồ thời gian:
Hỡnh 5.13: Giản đồ thời gian thực hiện khối mó Huffman
Thực hiện tổng hợp trờn dũng chip Virtex5(xc5vlx50t-3ff1136) thu được bảng kết quả tổng hợp (Bảng 5.13):
Bảng 5.13: Kết quả tổng hợp khối mó húa Huffman trờn dũng chip V5 jpeg_watermarking Project Status (10/15/2009 - 16:22:56)
Project File: jpeg_watermarking.ise Implementation State: Synthesized
Module Name: huffman_en • Errors: No Errors
Target Device: xc5vlx50t-3ff1136 • Warnings: 76 Warnings
Device Utilization Summary (estimated values) [-]
Logic Utilization Used Available Utilization
Number of Slice Registers 316 28800 1%
Number of Slice LUTs 223 28800 0%
Number of fully used LUT-FF pairs 187 352 53%
Number of bonded IOBs 52 480 10%
Number of BUFG/BUFGCTRLs 1 32 3%
Number of DSP48Es 7 48 14%
Timing Summary: --- Speed Grade: -3
Minimum period: 8.684ns (Maximum Frequency: 115.152MHz) Minimum input arrival time before clock: 2.743ns
Maximum output required time after clock: 2.775ns Maximum combinational path delay: No path found
Thực hiện tổng hợp trờn dũng chip Spartan3E(xc3s500e-5fg320) thu được bảng kết quả tổng hợp (Bảng 5.14):
Bảng 5.14: Kết quả tổng hợp khối mó húa Huffman trờn dũng chip S3E jpeg_watermarking Project Status (10/15/2009 - 16:21:08)
Project File: jpeg_watermarking.ise Implementation State: Synthesized
Module Name: huffman_en • Errors: No Errors
Target Device: xc3s500e-5fg320 • Warnings: 66 Warnings
Device Utilization Summary (estimated values) [-]
Logic Utilization Used Available Utilization
Number of Slices 227 4656 4%
Number of 4 input LUTs 300 9312 3%
Number of bonded IOBs 52 232 22%
Number of MULT18X18SIOs 5 20 25%
Number of GCLKs 1 24 4%
Timing Summary: --- Speed Grade: -5
Minimum period: 12.843ns (Maximum Frequency: 77.864MHz) Minimum input arrival time before clock: 8.091ns
Maximum output required time after clock: 4.040ns Maximum combinational path delay: No path found
5.2.1.8. Khối nộn ảnh JPEG tổng
- Giản đồ thời gian:
- Kết quả thực hiện tổng hợp:
Thực hiện tổng hợp trờn dũng chip Virtex5(xc5vlx50t-3ff1136) thu được bảng kết quả tổng hợp (Bảng 5.15):
Bảng 5.15: Kết quả tổng hợp khối nộn ảnh JPEG trờn dũng chip V5 jpeg_watermarking Project Status (10/15/2009 - 16:32:47)
Project File: jpeg_watermarking.ise Implementation State: Synthesized
Module Name: jpeg_encoder • Errors: No Errors
Target Device: xc5vlx50t-3ff1136 • Warnings: 2725 Warnings
Device Utilization Summary (estimated values) [-]
Logic Utilization Used Available Utilization
Number of Slice Registers 2909 28800 10%
Number of Slice LUTs 2186 28800 7%
Number of fully used LUT-FF pairs 1155 3940 29%
Number of bonded IOBs 43 480 8%
Number of BUFG/BUFGCTRLs 1 32 3%
Number of DSP48Es 24 48 50%
Timing Summary: --- Speed Grade: -3
Minimum period: 8.684ns (Maximum Frequency: 115.152MHz) Minimum input arrival time before clock: 4.190ns
Maximum output required time after clock: 3.537ns Maximum combinational path delay: 3.434ns
Thực hiện tổng hợp trờn dũng chip Spartan3E(xc3s500e-5fg320) thu được bảng kết quả tổng hợp (Bảng 5.16):
Bảng 5.16: Kết quả tổng hợp khối nộn JPEG trờn dũng chip S3E jpeg_watermarking Project Status (10/15/2009 - 16:40:24)
Project File: jpeg_watermarking.ise Implementation State: Synthesized
Module Name: jpeg_encoder • Errors: No Errors
Target Device: xc3s500e-5fg320 • Warnings: 4621 Warnings
Device Utilization Summary (estimated values) [-]
Number of Slices 2533 4656 54%
Number of Slice Flip Flops 2893 9312 31%
Number of 4 input LUTs 3006 9312 32%
Number of bonded IOBs 43 232 18%
Number of MULT18X18SIOs 20 20 100%
Number of GCLKs 1 24 4%
Timing Summary: --- Speed Grade: -5
Minimum period: 12.843ns (Maximum Frequency: 77.864MHz) Minimum input arrival time before clock: 9.502ns
Maximum output required time after clock: 5.712ns. Maximum combinational path delay: 8.372ns
5.2.2. Kết quả thực hiện cỏc thuật toỏn Watermarking-JPEG
Luận văn lựa chọn mụ hỡnh Watermarking-JPEG trong miền nộn để thực hiện tổng hợp trờn chip FPGA, với cỏc khối thuật toỏn được trỡnh bày dưới đõy.
5.2.2.1. Khối thực hiện biến đổi DCT_2D 16x16
Hỡnh 5.15: Giản đồ thời gian thực hiện khối DCT_2D 16x16
- Kết quả thực hiện tổng hợp:
Thực hiện tổng hợp trờn dũng chip Virtex5(xc5vlx50t-3ff1136) thu được bảng kết quả tổng hợp (Bảng 5.17):
Bảng 5.17: Kết quả tổng hợp khối DCT16x16 trờn dũng chip V5 jpeg_watermarking Project Status (10/15/2009 - 15:15:46)
Project File: jpeg_watermarking.ise Implementation State: Synthesized
Module Name: dct16x16 • Errors: No Errors
Target Device: xc5vlx50t-3ff1136 • Warnings: 7797 Warnings
Device Utilization Summary (estimated values) [-]
Logic Utilization Used Available Utilization
Number of Slice Registers 554 28800 1%
Number of Slice LUTs 738 28800 2%
Number of fully used LUT-FF pairs 523 769 68%
Number of BUFG/BUFGCTRLs 1 32 3%
Number of DSP48Es 8 48 16%
Timing Summary: --- Speed Grade: -3
Minimum period: 5.192ns (Maximum Frequency: 192.600MHz) Minimum input arrival time before clock: 1.844ns
Maximum output required time after clock: 4.506ns Maximum combinational path delay: No path found
Thực hiện tổng hợp trờn dũng chip Spartan3E(xc3s500e-5fg320) thu được bảng kết quả tổng hợp (Bảng 5.18):
Bảng 5.18: Kết quả tổng hợp khối DCT_2D 16x16 trờn dũng chip S3E jpeg_watermarking Project Status (10/15/2009 - 15:10:56)
Project File: jpeg_watermarking.ise Implementation State: Synthesized
Module Name: dct16x16 • Errors: No Errors
Target Device: xc3s500e-5fg320 • Warnings: 7796 Warnings
Device Utilization Summary (estimated values) [-]
Logic Utilization Used Available Utilization
Number of Slices 584 4656 12%
Number of Slice Flip Flops 538 9312 5%
Number of 4 input LUTs 957 9312 10%
Number of bonded IOBs 17 232 7%
Number of MULT18X18SIOs 8 20 40%
Number of GCLKs 1 24 4%
Timing Summary: --- Speed Grade: -5
Minimum period: 8.869ns (Maximum Frequency: 112.748MHz) Minimum input arrival time before clock: 3.227ns
Maximum output required time after clock: 7.749ns Maximum combinational path delay: No path found
5.2.2.2. Khối thực hiện thuật toỏn nhỳng watermark trong miền nộn
Hỡnh 5.16: Giản đồ thời gian thực hiện khối watermarking_block_compressed