|
|
  |
EDK9.2 - CY7C1380D(SSRAM), проблема с подключением через ЕМС1.0в |
|
|
|
Aug 27 2008, 12:09
|
Группа: Новичок
Сообщений: 2
Регистрация: 26-08-08
Пользователь №: 39 822

|
Дело в том, что этот модуль ЕМС1.0в помоему не очень подходит под этот SSRAM, но тем не мение на одном из бордов (виртекс4) он нормально работал с почти анологичной SSRAM кипарисов но только она была без АДСП И АДСЦ и на 1 мб, а эта на 2! Проблема в следующем есть микросхема CY7C1380D, есть ЕДК9.2, ЕМС1.0в, надо только это все связать!! На сайте кипарисов я нашел ман позваляющий убрать все сигналы управления до минимума!!Оставив только ОЕ и 4 BWE так как DQ 32-х разрядная, остольные заводятся на соответствующие разрешающие уровни!! Но ничего не выходит!! Еще вопрос шина адреса для меня немного странновата!Тоесть есть 3 различия между адресами(приведено на рисунке) A0, A1, A(2 to 18) я немного не понял этого решения!!Как сдесь задать адрес и как его задать в ЕДК?? Так что вот такие у меня проблемы!! Подскажите если есть какие нибудь соображения!! Спасибо зарание!
Эскизы прикрепленных изображений
|
|
|
|
|
Sep 8 2008, 13:54
|

Частый гость
 
Группа: Свой
Сообщений: 172
Регистрация: 17-03-05
Пользователь №: 3 422

|
Используем CY7C1471V25 (Flow-Through), проблем не обнаружено. С адресацией все просто: важны лишь 0 и 1 биты, а остальные назначаете сами. Если вам поможет, вот его mhs-описание из моего проекта ():
PORT SRAM_0_DQ_pin = SRAM_0_DQ, DIR = IO, VEC = [0:31] PORT SRAM_0_A_pin = SRAM_0_A, DIR = O, VEC = [0:31] # вывожу все адреса, цепляю только нужные PORT SRAM_0_BEN_pin = SRAM_0_BEN, DIR = O, VEC = [0:3] PORT SRAM_0_WEN_pin = SRAM_0_WEN, DIR = O PORT SRAM_0_OEN_pin = SRAM_0_OEN, DIR = O, VEC = [0:0] PORT SRAM_0_ADVLD_pin = SRAM_0_ADVLD, DIR = O PORT SRAM_0_MODE_pin = SRAM_0_MODE, DIR = O PORT SRAM_0_ZZ_pin = net_gnd, DIR = O PORT SRAM_0_CE_pin = net_gnd, DIR = O PORT SRAM_0_CEN_pin = net_vcc, DIR = O PORT SRAM_0_CLK_pin = SRAM_0_clock, DIR = O PORT SRAM_0_CLK_FB = SRAM_0_clk_FB, DIR = I, SIGIS = CLK, CLK_FREQ = 100000000
BEGIN opb_emc PARAMETER INSTANCE = sram_0 PARAMETER HW_VER = 2.00.a PARAMETER C_MAX_MEM_WIDTH = 32 PARAMETER C_MEM0_WIDTH = 32 PARAMETER C_NUM_BANKS_MEM = 1 PARAMETER C_SYNCH_MEM_0 = 1 PARAMETER C_OPB_CLK_PERIOD_PS = 10000 PARAMETER C_INCLUDE_DATAWIDTH_MATCHING_0 = 0 PARAMETER C_TCEDV_PS_MEM_0 = 0 PARAMETER C_TAVDV_PS_MEM_0 = 0 PARAMETER C_TWC_PS_MEM_0 = 0 PARAMETER C_TWP_PS_MEM_0 = 0 PARAMETER C_THZCE_PS_MEM_0 = 0 PARAMETER C_THZOE_PS_MEM_0 = 0 PARAMETER C_TLZWE_PS_MEM_0 = 0 PARAMETER C_SYNCH_PIPEDELAY_0 = 1 PARAMETER C_MEM0_BASEADDR = 0x40800000 PARAMETER C_MEM0_HIGHADDR = 0x40ffffff BUS_INTERFACE SOPB = mb_opb PORT OPB_Clk = sys_clk_s PORT Mem_DQ = SRAM_0_DQ PORT Mem_A = SRAM_0_A PORT Mem_BEN = SRAM_0_BEN PORT Mem_WEN = SRAM_0_WEN PORT Mem_OEN = SRAM_0_OEN PORT Mem_ADV_LDN = SRAM_0_ADVLD PORT Mem_LBON = SRAM_0_MODE END
Удачи!!!
|
|
|
|
|
Oct 27 2008, 16:50
|
Частый гость
 
Группа: Участник
Сообщений: 111
Регистрация: 25-06-07
Пользователь №: 28 668

|
Цитата(RKOB @ Sep 8 2008, 17:54)  Используем CY7C1471V25 (Flow-Through), проблем не обнаружено. С адресацией все просто: важны лишь 0 и 1 биты, а остальные назначаете сами. Если вам поможет, вот его mhs-описание из моего проекта ():
PORT SRAM_0_DQ_pin = SRAM_0_DQ, DIR = IO, VEC = [0:31] PORT SRAM_0_A_pin = SRAM_0_A, DIR = O, VEC = [0:31] # вывожу все адреса, цепляю только нужные PORT SRAM_0_BEN_pin = SRAM_0_BEN, DIR = O, VEC = [0:3] PORT SRAM_0_WEN_pin = SRAM_0_WEN, DIR = O PORT SRAM_0_OEN_pin = SRAM_0_OEN, DIR = O, VEC = [0:0] PORT SRAM_0_ADVLD_pin = SRAM_0_ADVLD, DIR = O PORT SRAM_0_MODE_pin = SRAM_0_MODE, DIR = O PORT SRAM_0_ZZ_pin = net_gnd, DIR = O PORT SRAM_0_CE_pin = net_gnd, DIR = O PORT SRAM_0_CEN_pin = net_vcc, DIR = O PORT SRAM_0_CLK_pin = SRAM_0_clock, DIR = O PORT SRAM_0_CLK_FB = SRAM_0_clk_FB, DIR = I, SIGIS = CLK, CLK_FREQ = 100000000
BEGIN opb_emc PARAMETER INSTANCE = sram_0 PARAMETER HW_VER = 2.00.a PARAMETER C_MAX_MEM_WIDTH = 32 PARAMETER C_MEM0_WIDTH = 32 PARAMETER C_NUM_BANKS_MEM = 1 PARAMETER C_SYNCH_MEM_0 = 1 PARAMETER C_OPB_CLK_PERIOD_PS = 10000 PARAMETER C_INCLUDE_DATAWIDTH_MATCHING_0 = 0 PARAMETER C_TCEDV_PS_MEM_0 = 0 PARAMETER C_TAVDV_PS_MEM_0 = 0 PARAMETER C_TWC_PS_MEM_0 = 0 PARAMETER C_TWP_PS_MEM_0 = 0 PARAMETER C_THZCE_PS_MEM_0 = 0 PARAMETER C_THZOE_PS_MEM_0 = 0 PARAMETER C_TLZWE_PS_MEM_0 = 0 PARAMETER C_SYNCH_PIPEDELAY_0 = 1 PARAMETER C_MEM0_BASEADDR = 0x40800000 PARAMETER C_MEM0_HIGHADDR = 0x40ffffff BUS_INTERFACE SOPB = mb_opb PORT OPB_Clk = sys_clk_s PORT Mem_DQ = SRAM_0_DQ PORT Mem_A = SRAM_0_A PORT Mem_BEN = SRAM_0_BEN PORT Mem_WEN = SRAM_0_WEN PORT Mem_OEN = SRAM_0_OEN PORT Mem_ADV_LDN = SRAM_0_ADVLD PORT Mem_LBON = SRAM_0_MODE END
Удачи!!! А где сдесь тайминги?? Ведь насколько я поня без них никак?? Для своей CY7Y1380D я нашел тайминги на частоту 250, 200 и 167 МГц в даташите, но микроб не потянет даж на сотне помоему с объемной переферией темболие кварц у меня 50МГц!! Так как же мне быть?? Я подогнал 2 тайминга на глазок проходит 2 теста 32- и 16-битные!! 8-битный не проходит!! Мб у кого нибудь есть тайминги на 75Мгц или ктонибудь знает где их достать??Буду оч благодарен!! А клок я использую системный sys_clk_s просто вывожу его внешним портом на ногу СРАМ без всяких ДЦМ с обратной связью! Это правильно??
|
|
|
|
|
Oct 28 2008, 09:45
|

Частый гость
 
Группа: Свой
Сообщений: 172
Регистрация: 17-03-05
Пользователь №: 3 422

|
Цитата А где сдесь тайминги?? Что вы понимаете под словом "тайминги"? я вам привел лишь пример описания аппаратной части. Цитата Для своей CY7Y1380D я нашел тайминги на частоту 250, 200 и 167 МГц в даташите, но микроб не потянет даж на сотне помоему с объемной переферией темболие кварц у меня 50МГц!! Так как же мне быть?? Еще как тянет... Цитата Я подогнал 2 тайминга на глазок проходит 2 теста 32- и 16-битные!! И как же вы подогнали? Оч.интересно узнать! Цитата А клок я использую системный sys_clk_s просто вывожу его внешним портом на ногу СРАМ без всяких ДЦМ с обратной связью! Это правильно?? Можно и так (это если на низких частотах, т.к. память успевает), но лучше всего использовать feedback или же инверсный клок. А sys_clk_s у вас какой? Если 75 МГц, то должно работать как часики ;-) Если у вас не проходит 8-битный тест, то скорее всего у вас ошибка в адресации или перепутаны BE и Data.
|
|
|
|
|
Oct 28 2008, 17:08
|
Частый гость
 
Группа: Участник
Сообщений: 111
Регистрация: 25-06-07
Пользователь №: 28 668

|
Цитата PARAMETER C_TCEDV_PS_MEM_0 = 0 PARAMETER C_TAVDV_PS_MEM_0 = 0 PARAMETER C_TWC_PS_MEM_0 = 0 PARAMETER C_TWP_PS_MEM_0 = 0 PARAMETER C_THZCE_PS_MEM_0 = 0 PARAMETER C_THZOE_PS_MEM_0 = 0 PARAMETER C_TLZWE_PS_MEM_0 = 0 Вот что я понимаю под таймингами Цитата Я подогнал 2 тайминга на глазок проходит 2 теста 32- и 16-битные!!
И как же вы подогнали? Оч.интересно узнать! Подогнал посмотрев на диограмму на осцилограффе! А у вас какая частота и какие тайминги и какая плис???? Кстати я так понял в синхронном режиме Код PARAMETER C_SYNCH_MEM_0 = 1 тайминги ваобще прописовать не надо так как там есть два режима Код PARAMETER C_SYNCH_PIPEDELAY_0 = 1 и Код PARAMETER C_SYNCH_PIPEDELAY_0 = 2 со стандартными таймингами или я что то не понял?? Я сейчас работаю в асинхронном!! Цитата А клок я использую системный sys_clk_s просто вывожу его внешним портом на ногу СРАМ без всяких ДЦМ с обратной связью! Это правильно??
Можно и так (это если на низких частотах, т.к. память успевает), но лучше всего использовать feedback или же инверсный клок. А sys_clk_s у вас какой? Если 75 МГц, то должно работать как часики ;-) Если у вас не проходит 8-битный тест, то скорее всего у вас ошибка в адресации или перепутаны BE и Data. ТОесть клок который я подаю на срам ядолжен сдвигать на 180 град относительно sys_clk_s?? А с 8-ми битным тестом седня разабрался БВЕ 3 и 4 банков перепутал!! А feedback насколько я понял должна помимо микроба быть реализована еще и физически на плате!!1 ДЦМ тут помоему не поможет??Или яне прав??
|
|
|
|
|
Oct 29 2008, 10:54
|

Частый гость
 
Группа: Свой
Сообщений: 172
Регистрация: 17-03-05
Пользователь №: 3 422

|
Цитата у вас какая частота и какие тайминги и какая плис???? плис Virtex-4LX80, тайминги мои уже были приведены выше. Работаю на 100 МГц (и МВ и контроллер). Цитата есть клок который я подаю на срам ядолжен сдвигать на 180 град относительно sys_clk_s?? Я поступаю именно так. Цитата А feedback насколько я понял должна помимо микроба быть реализована еще и физически на плате!!1 ДЦМ тут помоему не поможет??Или яне прав?? Да. Вы правы.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|