Προς το περιεχόμενο

Σύστημα Αναγνώρισης Αντικειμένων πάνω σε FPGA


Tzevas

Προτεινόμενες αναρτήσεις

Παιδιά Καλησπέρα,

Θα μπορούσε κάποιος να με βοηθήσει δίνοντας τα φώτα του επάνω σε έναν κώδικα VHDL που προσπαθώ να αναπτύξω σχετικά με την αναγνώριση πινακίδας αυτοκινήτου I.X σε δοσμένη φωτογραφία? 

Σύμφωνα με την εργασία, απαιτείται η δημιουργία ενός κώδικα σε μορφή VHDL ή Verilog(προτιμάται), ο οποίος θα προγραμματίζει μέσω της Εφαρμογής ise design suite 14.7 της Xillinx κατάλληλα μια FPGA Spartan 3 XC3S400, έτσι ώστε να διαβάζει μια δοσμένη κάθε φορά εικόνα στην οποία θα απεικονίζεται μια πινακίδα ενός αυτοκινήτου και εν συνεχεία θα εμφανίζει στο digital display της κάρτας ο 4-ψήφιος αριθμός της πινακίδας.
 
Αυτός είναι ο κώδικας:
 
/ Verilog project: License Plate Recognition in Verilog 
// Top level Verilog code for License Plate Recognition
module LPChRec(  
   input clk,  
   input rst,  
   input start,  
       input [7:0] image_pixel_val,  
       output [15:0] image_pixel_addr,  
   output [5:0] ReadCh,  
       output CharCheck,  
   output done  
   );  
 wire [7:0] ccl_th_low;  
 wire [7:0] ccl_th_high;  
 wire [7:0] image_pixel_val1;  
 wire [15:0] image_pixel_addr1;  
 wire [15:0] ImgAddr;  
 wire [7:0] ImgVal;  
 wire [7:0] ObjAddr1;  
 wire [55:0] ObjInfo;  
 wire                ccl_done,active;  
 assign ccl_th_low = 8'd40;  
 assign ccl_th_high = 8'd255;  
 assign image_pixel_addr = (active)?ImgAddr:image_pixel_addr1;  
 assign image_pixel_val1 = image_pixel_val;  
 assign ImgVal                    = image_pixel_val;  
// fpga4student.com FPGA projects, Verilog projects, VHDL projects 
// Image processor unit
 image_processor image_processor_inst (  
   .image_pixel_addr(image_pixel_addr1),   
   .image_pixel_val(image_pixel_val1),   
   .clk(clk),   
   .rst(rst),   
   .ccl_start(start),   
   .ccl_th_low(ccl_th_low),   
   .ccl_th_high(ccl_th_high),   
   .ccl_done(ccl_done),  
       .ccl_mem_result_addr(ObjAddr1),  
       .ccl_mem_result_data(ObjInfo)  
   );  
// fpga4student.com FPGA projects, Verilog projects, VHDL projects 
// Create object module 
 CreateObj CreateObjInst (  
   .clk(clk),   
   .rst(rst),   
   .start(ccl_done),   
   .thresh(ccl_th_low),   
   .ObjInfo(ObjInfo),   
   .ImgVal(ImgVal),   
   .ObjAddr1(ObjAddr1),   
   .ImgAddr(ImgAddr),  
   .Char(ReadCh),  
   .CharCheck(CharCheck),  
   .active(active),   
   .done(done)  
   );  
 endmodule  

 Και αυτά είναι τα δύο erros που μου βγάζει στο compile: 

Errors.png

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημοσ. (επεξεργασμένο)
1 ώρα πριν, Tzevas είπε

Παιδιά Καλησπέρα,

Θα μπορούσε κάποιος να με βοηθήσει δίνοντας τα φώτα του επάνω σε έναν κώδικα VHDL που προσπαθώ να αναπτύξω σχετικά με την αναγνώριση πινακίδας αυτοκινήτου I.X σε δοσμένη φωτογραφία? 

Σύμφωνα με την εργασία, απαιτείται η δημιουργία ενός κώδικα σε μορφή VHDL ή Verilog(προτιμάται), ο οποίος θα προγραμματίζει μέσω της Εφαρμογής ise design suite 14.7 της Xillinx κατάλληλα μια FPGA Spartan 3 XC3S400, έτσι ώστε να διαβάζει μια δοσμένη κάθε φορά εικόνα στην οποία θα απεικονίζεται μια πινακίδα ενός αυτοκινήτου και εν συνεχεία θα εμφανίζει στο digital display της κάρτας ο 4-ψήφιος αριθμός της πινακίδας.
 
Αυτός είναι ο κώδικας:
 
/ Verilog project: License Plate Recognition in Verilog 
// Top level Verilog code for License Plate Recognition
module LPChRec(  
   input clk,  
   input rst,  
   input start,  
       input [7:0] image_pixel_val,  
       output [15:0] image_pixel_addr,  
   output [5:0] ReadCh,  
       output CharCheck,  
   output done  
   );  
 wire [7:0] ccl_th_low;  
 wire [7:0] ccl_th_high;  
 wire [7:0] image_pixel_val1;  
 wire [15:0] image_pixel_addr1;  
 wire [15:0] ImgAddr;  
 wire [7:0] ImgVal;  
 wire [7:0] ObjAddr1;  
 wire [55:0] ObjInfo;  
 wire                ccl_done,active;  
 assign ccl_th_low = 8'd40;  
 assign ccl_th_high = 8'd255;  
 assign image_pixel_addr = (active)?ImgAddr:image_pixel_addr1;  
 assign image_pixel_val1 = image_pixel_val;  
 assign ImgVal                    = image_pixel_val;  
// fpga4student.com FPGA projects, Verilog projects, VHDL projects 
// Image processor unit
 image_processor image_processor_inst (  
   .image_pixel_addr(image_pixel_addr1),   
   .image_pixel_val(image_pixel_val1),   
   .clk(clk),   
   .rst(rst),   
   .ccl_start(start),   
   .ccl_th_low(ccl_th_low),   
   .ccl_th_high(ccl_th_high),   
   .ccl_done(ccl_done),  
       .ccl_mem_result_addr(ObjAddr1),  
       .ccl_mem_result_data(ObjInfo)  
   );  
// fpga4student.com FPGA projects, Verilog projects, VHDL projects 
// Create object module 
 CreateObj CreateObjInst (  
   .clk(clk),   
   .rst(rst),   
   .start(ccl_done),   
   .thresh(ccl_th_low),   
   .ObjInfo(ObjInfo),   
   .ImgVal(ImgVal),   
   .ObjAddr1(ObjAddr1),   
   .ImgAddr(ImgAddr),  
   .Char(ReadCh),  
   .CharCheck(CharCheck),  
   .active(active),   
   .done(done)  
   );  
 endmodule  

 Και αυτά είναι τα δύο erros που μου βγάζει στο compile: 

imageproxy.php?img=&key=2f3e8a0ffdb7258f

Errors.png

Ούτε που ξέρω τι είναι η Verilog αλλά με ένα απλό search βρήκα το παρακάτω:

https://forums.xilinx.com/t5/Simulation-and-Verification/ERROR-HDLCompiler-559-Could-not-find-module/td-p/54510

This error can occur if ISE doesn't build a simulation script including the module in question.  This typically occurs if the files associated with the module have an incorrect "file association":

1) Right click on the source file for the module in question.  Select "Source Properties"

2) In "View Association" select either "All" or "Simulation"

After doing so you should see the model instantiated under the testbench (icon shouldn't be a question mark, but a VHD/Verilog icon)

Δεν ξέρω αν το έψαξες και εσύ αλλά είπα ας το βάλω μήπως και είναι αυτό το πρόβλημα σου , βλέπω και σε σένα τα εικονίδια είναι με ερωτηματικό

Επεξ/σία από tsofras
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

15 hours ago, Tzevas said:

Παιδιά Καλησπέρα,

Θα μπορούσε κάποιος να με βοηθήσει δίνοντας τα φώτα του επάνω σε έναν κώδικα VHDL που προσπαθώ να αναπτύξω σχετικά με την αναγνώριση πινακίδας αυτοκινήτου I.X σε δοσμένη φωτογραφία? 

Σύμφωνα με την εργασία, απαιτείται η δημιουργία ενός κώδικα σε μορφή VHDL ή Verilog(προτιμάται), ο οποίος θα προγραμματίζει μέσω της Εφαρμογής ise design suite 14.7 της Xillinx κατάλληλα μια FPGA Spartan 3 XC3S400, έτσι ώστε να διαβάζει μια δοσμένη κάθε φορά εικόνα στην οποία θα απεικονίζεται μια πινακίδα ενός αυτοκινήτου και εν συνεχεία θα εμφανίζει στο digital display της κάρτας ο 4-ψήφιος αριθμός της πινακίδας.
 
Αυτός είναι ο κώδικας:
 
/ Verilog project: License Plate Recognition in Verilog 
// Top level Verilog code for License Plate Recognition
module LPChRec(  
   input clk,  
   input rst,  
   input start,  
       input [7:0] image_pixel_val,  
       output [15:0] image_pixel_addr,  
   output [5:0] ReadCh,  
       output CharCheck,  
   output done  
   );  
 wire [7:0] ccl_th_low;  
 wire [7:0] ccl_th_high;  
 wire [7:0] image_pixel_val1;  
 wire [15:0] image_pixel_addr1;  
 wire [15:0] ImgAddr;  
 wire [7:0] ImgVal;  
 wire [7:0] ObjAddr1;  
 wire [55:0] ObjInfo;  
 wire                ccl_done,active;  
 assign ccl_th_low = 8'd40;  
 assign ccl_th_high = 8'd255;  
 assign image_pixel_addr = (active)?ImgAddr:image_pixel_addr1;  
 assign image_pixel_val1 = image_pixel_val;  
 assign ImgVal                    = image_pixel_val;  
// fpga4student.com FPGA projects, Verilog projects, VHDL projects 
// Image processor unit
 image_processor image_processor_inst (  
   .image_pixel_addr(image_pixel_addr1),   
   .image_pixel_val(image_pixel_val1),   
   .clk(clk),   
   .rst(rst),   
   .ccl_start(start),   
   .ccl_th_low(ccl_th_low),   
   .ccl_th_high(ccl_th_high),   
   .ccl_done(ccl_done),  
       .ccl_mem_result_addr(ObjAddr1),  
       .ccl_mem_result_data(ObjInfo)  
   );  
// fpga4student.com FPGA projects, Verilog projects, VHDL projects 
// Create object module 
 CreateObj CreateObjInst (  
   .clk(clk),   
   .rst(rst),   
   .start(ccl_done),   
   .thresh(ccl_th_low),   
   .ObjInfo(ObjInfo),   
   .ImgVal(ImgVal),   
   .ObjAddr1(ObjAddr1),   
   .ImgAddr(ImgAddr),  
   .Char(ReadCh),  
   .CharCheck(CharCheck),  
   .active(active),   
   .done(done)  
   );  
 endmodule  

 Και αυτά είναι τα δύο erros που μου βγάζει στο compile: 

imageproxy.php?img=&key=2f3e8a0ffdb7258f

Errors.png

Προφανώς τα δυο modules που κάνεις instantiate στο top module σου δεν τα βρίσκει. Ίσως να μην τα έχεις στον ίδιο φάκελο ή να μην τα έχεις προσθέσει στο project ή έχεις διαφορετικές ονομασίες (η verilog είναι case sensitive σε αντιθεση με τη VHDL) ή έχουν κάποιο compile error.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

2 ώρες πριν, Dr.Fuzzy είπε

Προφανώς τα δυο modules που κάνεις instantiate στο top module σου δεν τα βρίσκει. Ίσως να μην τα έχεις στον ίδιο φάκελο ή να μην τα έχεις προσθέσει στο Project

Προφανώς.

Στείλε ένα email εδώ:  https://www.fpga4student.com/2016/11/plate-license-recognition-verilogmatlab.html να σου στείλουν το υπόλοιπο. Στα σχόλια υπάρχουν 2 emails.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

1 hour ago, marios28 said:

Προφανώς.

Στείλε ένα email εδώ:  https://www.fpga4student.com/2016/11/plate-license-recognition-verilogmatlab.html να σου στείλουν το υπόλοιπο. Στα σχόλια υπάρχουν 2 emails.

Έλα μου;

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...