

Public Types | |
| enum | notifications_e { FULL, EMPTY, PUT, GOT, PEEKED, ACTIVATED, ACT_STARTED, ACT_COMPLETED, ACT_REMOVED, LOCKED, UNLOCKED } |
| enum | endpoints_e { SOURCE = 0b01, SINK = 0b10 } |
| enum | active_status_e { INACTIVE = 0, PENDING = 1, STARTED = 2, COMPLETED = 3 } |
Public Member Functions | |
| new (string name, string inst, int unsigned full=1, int unsigned empty=0, bit fill_as_bytes=0b0) | |
| void | reconfigure (int full=-1, int empty=-1, logic fill_as_bytes=0bx) |
| int unsigned | full_level () |
| int unsigned | empty_level () |
| int unsigned | level () |
| int unsigned | size () |
| bit | is_full () |
| void | flush () |
| void | sink () |
| void | flow () |
| void | reset () |
| void | lock (bit< 1:0 > who) |
| void | unlock (bit< 1:0 > who) |
| bit | is_locked (bit< 1:0 > who) |
| void | display (string prefix="") |
| string | psdisplay (string prefix="") |
| task | put (vmm_data obj, int offset=-1) |
| void | sneak (vmm_data obj, int offset=-1) |
| vmm_data | unput (int offset=-1) |
| task | get (output vmm_data obj, input int offset=0) |
| task | peek (output vmm_data obj, input int offset=0) |
| task | activate (output vmm_data obj, input int offset=0) |
| vmm_data | active_slot () |
| vmm_data | start () |
| vmm_data | complete (vmm_data status=null) |
| vmm_data | remove () |
| active_status_e | status () |
| bit | tee_mode (bit is_on) |
| task | tee (output vmm_data obj) |
| void | connect (vmm_channel downstream) |
| vmm_data | for_each (bit reset=0) |
| int unsigned | for_each_offset () |
| bit | record (string filename) |
| task | playback (output bit success, input string filename, input vmm_data loader, input bit metered=0) |
| void | register_vmm_sb_ds (vmm_sb_ds sb, vmm_sb_ds::kind_e kind, vmm_sb_ds::ordering_e order=vmm_sb_ds::IN_ORDER) |
| void | unregister_vmm_sb_ds (vmm_sb_ds sb) |
Public Attributes | |
| vmm_log | log |
| vmm_notify | notify |
Private Member Functions | |
| task | get1 (output vmm_data obj, input int offset=0) |
| int | index (int offset) |
| task | block_producer () |
| task | block_consumer () |
| task | unblock_producer () |
Private Attributes | |
| int | full = 0 |
| int | empty = 0 |
| bit | is_sunk = 0 |
| vmm_data | data [$] |
| vmm_data | tee_data [$] |
| vmm_data | active |
| active_status_e | active_status |
| event | teed |
| vmm_channel | downstream |
| event | new_connection |
| bit | tee_on = 0 |
| bit< 1:0 > | locks |
| bit | full_chan |
| event | item_added |
| event | item_taken |
| int | iterator |
| vmm_sb_ds_registration | _vmm_sb_ds [$] |
Static Private Attributes | |
| static bit | one_log = $test$plusargs("vmm_channel_shared_log") |
| static vmm_log | shared_log = null |
Definition at line 1177 of file std_lib/vmm.sv.
Definition at line 1203 of file std_lib/vmm.sv.
Definition at line 1199 of file std_lib/vmm.sv.
| FULL | |
| EMPTY | |
| PUT | |
| GOT | |
| PEEKED | |
| ACTIVATED | |
| ACT_STARTED | |
| ACT_COMPLETED | |
| ACT_REMOVED | |
| LOCKED | |
| UNLOCKED |
Definition at line 1186 of file std_lib/vmm.sv.
| task vmm_channel::activate | ( | output vmm_data | obj, | |
| input int | offset = 0 | |||
| ) |
Definition at line 482 of file vmm_channel.sv.
| vmm_data vmm_channel::active_slot | ( | ) |
Reimplemented in xvc_action_channel.
Definition at line 537 of file vmm_channel.sv.
| task vmm_channel::block_consumer | ( | ) | [private] |
Definition at line 712 of file vmm_channel.sv.
| task vmm_channel::block_producer | ( | ) | [private] |
Definition at line 706 of file vmm_channel.sv.
Reimplemented in xvc_action_channel.
Definition at line 561 of file vmm_channel.sv.
| void vmm_channel::connect | ( | vmm_channel | downstream | ) |
Definition at line 643 of file vmm_channel.sv.
| void vmm_channel::display | ( | string | prefix = "" |
) |
Definition at line 242 of file vmm_channel.sv.
| int unsigned vmm_channel::empty_level | ( | ) |
Definition at line 170 of file vmm_channel.sv.
| void vmm_channel::flow | ( | ) |
Definition at line 212 of file vmm_channel.sv.
| void vmm_channel::flush | ( | ) |
Definition at line 190 of file vmm_channel.sv.
| vmm_data vmm_channel::for_each | ( | bit | reset = 0 |
) |
Reimplemented in xvc_action_channel.
Definition at line 653 of file vmm_channel.sv.
| int unsigned vmm_channel::for_each_offset | ( | ) |
Definition at line 662 of file vmm_channel.sv.
| int unsigned vmm_channel::full_level | ( | ) |
Definition at line 165 of file vmm_channel.sv.
| task vmm_channel::get | ( | output vmm_data | obj, | |
| input int | offset = 0 | |||
| ) |
Definition at line 441 of file vmm_channel.sv.
| task vmm_channel::get1 | ( | output vmm_data | obj, | |
| input int | offset = 0 | |||
| ) | [private] |
Definition at line 372 of file vmm_channel.sv.
| int vmm_channel::index | ( | int | offset | ) | [private] |
Definition at line 687 of file vmm_channel.sv.
| bit vmm_channel::is_full | ( | ) |
Definition at line 185 of file vmm_channel.sv.
| bit vmm_channel::is_locked | ( | bit< 1:0 > | who | ) |
Definition at line 237 of file vmm_channel.sv.
| int unsigned vmm_channel::level | ( | ) |
Definition at line 175 of file vmm_channel.sv.
| void vmm_channel::lock | ( | bit< 1:0 > | who | ) |
Definition at line 222 of file vmm_channel.sv.
| vmm_channel::new | ( | string | name, | |
| string | inst, | |||
| int unsigned | full = 1, |
|||
| int unsigned | empty = 0, |
|||
| bit | fill_as_bytes = 0b0 | |||
| ) |
Definition at line 25 of file vmm_channel.sv.
| task vmm_channel::peek | ( | output vmm_data | obj, | |
| input int | offset = 0 | |||
| ) |
Definition at line 448 of file vmm_channel.sv.
| task vmm_channel::playback | ( | output bit | success, | |
| input string | filename, | |||
| input vmm_data | loader, | |||
| input bit | metered = 0 | |||
| ) |
Definition at line 678 of file vmm_channel.sv.
| string vmm_channel::psdisplay | ( | string | prefix = "" |
) |
Definition at line 247 of file vmm_channel.sv.
| task vmm_channel::put | ( | vmm_data | obj, | |
| int | offset = -1 | |||
| ) |
Definition at line 266 of file vmm_channel.sv.
| void vmm_channel::reconfigure | ( | int | full = -1, |
|
| int | empty = -1, |
|||
| logic | fill_as_bytes = 0bx | |||
| ) |
Definition at line 126 of file vmm_channel.sv.
| bit vmm_channel::record | ( | string | filename | ) |
Definition at line 667 of file vmm_channel.sv.
| void vmm_channel::register_vmm_sb_ds | ( | vmm_sb_ds | sb, | |
| vmm_sb_ds::kind_e | kind, | |||
| vmm_sb_ds::ordering_e | order = vmm_sb_ds::IN_ORDER | |||
| ) |
| vmm_data vmm_channel::remove | ( | ) |
Reimplemented in xvc_action_channel.
Definition at line 579 of file vmm_channel.sv.
| void vmm_channel::reset | ( | ) |
Definition at line 217 of file vmm_channel.sv.
| void vmm_channel::sink | ( | ) |
Definition at line 206 of file vmm_channel.sv.
| int unsigned vmm_channel::size | ( | ) |
Definition at line 180 of file vmm_channel.sv.
| void vmm_channel::sneak | ( | vmm_data | obj, | |
| int | offset = -1 | |||
| ) |
Definition at line 280 of file vmm_channel.sv.
| vmm_data vmm_channel::start | ( | ) |
Reimplemented in xvc_action_channel.
Definition at line 542 of file vmm_channel.sv.
| vmm_channel::active_status_e vmm_channel::status | ( | ) |
Definition at line 606 of file vmm_channel.sv.
| task vmm_channel::tee | ( | output vmm_data | obj | ) |
Definition at line 625 of file vmm_channel.sv.
| bit vmm_channel::tee_mode | ( | bit | is_on | ) |
Definition at line 611 of file vmm_channel.sv.
| task vmm_channel::unblock_producer | ( | ) | [private] |
Definition at line 719 of file vmm_channel.sv.
| void vmm_channel::unlock | ( | bit< 1:0 > | who | ) |
Definition at line 228 of file vmm_channel.sv.
| vmm_data vmm_channel::unput | ( | int | offset = -1 |
) |
Reimplemented in xvc_action_channel.
Definition at line 330 of file vmm_channel.sv.
| void vmm_channel::unregister_vmm_sb_ds | ( | vmm_sb_ds | sb | ) |
vmm_sb_ds_registration vmm_channel::_vmm_sb_ds[$] [private] |
Definition at line 1304 of file std_lib/vmm.sv.
vmm_data vmm_channel::active [private] |
Definition at line 1218 of file std_lib/vmm.sv.
active_status_e vmm_channel::active_status [private] |
Definition at line 1219 of file std_lib/vmm.sv.
vmm_data vmm_channel::data[$] [private] |
Definition at line 1216 of file std_lib/vmm.sv.
vmm_channel vmm_channel::downstream [private] |
Definition at line 1221 of file std_lib/vmm.sv.
int vmm_channel::empty = 0 [private] |
Definition at line 1213 of file std_lib/vmm.sv.
int vmm_channel::full = 0 [private] |
Definition at line 1212 of file std_lib/vmm.sv.
bit vmm_channel::full_chan [private] |
Definition at line 1226 of file std_lib/vmm.sv.
bit vmm_channel::is_sunk = 0 [private] |
Definition at line 1214 of file std_lib/vmm.sv.
event vmm_channel::item_added [private] |
Definition at line 1227 of file std_lib/vmm.sv.
event vmm_channel::item_taken [private] |
Definition at line 1228 of file std_lib/vmm.sv.
int vmm_channel::iterator [private] |
Definition at line 1230 of file std_lib/vmm.sv.
bit<1:0> vmm_channel::locks [private] |
Definition at line 1224 of file std_lib/vmm.sv.
Definition at line 1182 of file std_lib/vmm.sv.
event vmm_channel::new_connection [private] |
Definition at line 1222 of file std_lib/vmm.sv.
Definition at line 1183 of file std_lib/vmm.sv.
bit vmm_channel::one_log = $test$plusargs("vmm_channel_shared_log") [static, private] |
Definition at line 1209 of file std_lib/vmm.sv.
vmm_log vmm_channel::shared_log = null [static, private] |
Definition at line 1210 of file std_lib/vmm.sv.
vmm_data vmm_channel::tee_data[$] [private] |
Definition at line 1217 of file std_lib/vmm.sv.
bit vmm_channel::tee_on = 0 [private] |
Definition at line 1223 of file std_lib/vmm.sv.
event vmm_channel::teed [private] |
Definition at line 1220 of file std_lib/vmm.sv.
![]() Intelligent Design Verification Project: VMM, Revision: 1.0.0 |
Copyright (c) 2008-2010 Intelligent Design Verification. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included here: http://www.intelligentdv.com/licenses/fdl.txt |
![]() Doxygen Version: 1.6.3 IDV SV Filter Version: 2.6.3 Sat Jun 19 12:01:49 2010 |