- Timestamp:
- Jul 12, 2013, 12:07:28 PM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/modules/vci_block_device_tsar/caba/source/src/vci_block_device_tsar.cpp
r424 r433 226 226 r_block_count = 0; 227 227 r_burst_count = 0; 228 r_words_count 228 r_words_count = 0; 229 229 r_latency_count = m_latency; 230 230 … … 603 603 p_vci_initiator.pktid = TYPE_WRITE; 604 604 p_vci_initiator.plen = (sc_dt::sc_uint<vci_param::K>)(r_burst_nwords.read()<<2); 605 p_vci_initiator.eop = ( r_words_count.read() == (r_burst_nwords.read() - 1) );606 605 if ( (vci_param::B == 8) and ((r_burst_nwords.read() - r_words_count.read()) > 1) ) 607 606 { … … 609 608 (((uint64_t)r_local_buffer[r_index.read()+1]) << 32); 610 609 p_vci_initiator.be = 0xFF; 610 p_vci_initiator.eop = ( (r_burst_nwords.read() - r_words_count.read()) <= 2 ); 611 611 } 612 612 else … … 614 614 p_vci_initiator.wdata = r_local_buffer[r_index.read()]; 615 615 p_vci_initiator.be = 0xF; 616 p_vci_initiator.eop = ( r_words_count.read() == (r_burst_nwords.read() - 1) ); 616 617 } 617 618 break; … … 628 629 629 630 // IRQ signal 630 if(((r_initiator_fsm == M_READ_SUCCESS) || 631 (r_initiator_fsm == M_WRITE_SUCCESS) || 632 (r_initiator_fsm == M_READ_ERROR) || 633 (r_initiator_fsm == M_WRITE_ERROR) ) && r_irq_enable) p_irq = true; 634 else p_irq = false; 631 if ( ((r_initiator_fsm == M_READ_SUCCESS) || 632 (r_initiator_fsm == M_WRITE_SUCCESS) || 633 (r_initiator_fsm == M_READ_ERROR) || 634 (r_initiator_fsm == M_WRITE_ERROR) ) && 635 r_irq_enable.read() ) p_irq = true; 636 else p_irq = false; 635 637 } // end GenMoore() 636 638 … … 658 660 p_irq("p_irq") 659 661 { 662 std::cout << " - Building VciBlockDeviceTsar " << name << std::endl; 663 660 664 SC_METHOD(transition); 661 665 dont_initialize(); … … 686 690 exit(1); 687 691 } 692 std::cout << " => segment " << seg->name() 693 << " / base = " << std::hex << seg->baseAddress() 694 << " / size = " << seg->size() << std::endl; 688 695 } 689 696 … … 708 715 } 709 716 710 if( (burst_size != 4 ) && 711 (burst_size != 8 ) && 717 if( (burst_size != 8 ) && 712 718 (burst_size != 16) && 713 719 (burst_size != 32) && … … 715 721 { 716 722 std::cout << "Error in component VciBlockDeviceTsar : " << name 717 << " The burst size must be 4,8, 16, 32 or 64 bytes" << std::endl;723 << " The burst size must be 8, 16, 32 or 64 bytes" << std::endl; 718 724 exit(1); 719 725 }
Note: See TracChangeset
for help on using the changeset viewer.