Forum Discussion
Altera_Forum
Honored Contributor
21 years agoSynchronous SRAM - Instruction and Data memory
Hello, Has anyone implemented synchronous sram for Nios instruciton and data store (ie execute out of synch sram)? I'm sure it can be done, but I'm wondering about the performance hit ...
Altera_Forum
Honored Contributor
21 years agoHi,
this file "class.ptf" allows to use the onboard SSRAM as instruction and data memory on DSP Development Board: # ## CLASS dspboard_ssram { ASSOCIATED_FILES { Add_Program = ""; Edit_Program = ""; Generator_Program = "--none--"; } USER_INTERFACE { USER_LABELS { name="SSRAM on 1s25 DSP Board"; technology = "Memory"; } } MODULE_DEFAULTS { class = "dspboard_ssram"; class_version = "2.0"; HDL_INFO { # An interface to this memory requires no additional files # in the target project directory. } SLAVE s1 { PORT_WIRING { PORT A { direction = "input"; is_shared = "1"; type = "address"; width = "18"; } PORT D { direction = "inout"; is_shared = "1"; type = "data"; width = "32"; } PORT adsc_n { direction = "input"; is_shared = "1"; type = "always0"; width = "1"; } PORT adsp_n { direction = "input"; is_shared = "1"; type = "outputenable_n"; width = "1"; } PORT adv_n { direction = "input"; is_shared = "1"; type = "always1"; width = "1"; } PORT bw_n { direction = "input"; is_shared = "1"; type = "writebyteenable_n"; width = "4"; } PORT bwe_n { direction = "input"; is_shared = "1"; type = "write_n"; width = "1"; } PORT clk { direction = "input"; is_shared = "1"; type = "clk"; width = "1"; } PORT chipselect_n { direction = "input"; type = "chipselect_n"; width = "1"; } PORT mode { direction = "input"; is_shared = "1"; type = "always0"; width = "1"; } PORT oe_n { direction = "input"; is_shared = "1"; type = "outputenable_n"; width = "1"; } } SYSTEM_BUILDER_INFO { Active_CS_Through_Read_Latency = "1"; Address_Alignment = "dynamic"; Address_Width = "18"; Base_Address = "--unknown--"; Bus_Type = "avalon_tristate"; Data_Width = "32"; Has_IRQ = "0"; IRQ_Number = "N/A"; Is_Memory_Device = "1"; Read_Latency = "1"; Read_Wait_States = "0"; Write_Wait_States = "0"; Setup_Time = "1"; Hold_Time = "0"; } } SYSTEM_BUILDER_INFO { Is_Enabled = "1"; Instantiate_In_System_Module = "0"; } } } # ## Hope that helps! Jochen http://forum.niosforum.com/work2/style_emoticons/<#EMO_DIR#>/smile.gif