реклама на сайте
подробности

 
 
 
Closed TopicStart new topic
> DCM, как подключить корку
NOVY
сообщение May 3 2011, 08:17
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 49
Регистрация: 28-09-09
Пользователь №: 52 622



Вот пробую, но не получается ....
Внешний клок подал на копыто GCLK0 ...
Пропустил через IBUFG ...

Сгенерил корегенератором DCM без доп. входов и выходов (только CLKIN и CLK0)...

Получилось :

Attributes for DCM_SP, blkname = DCM_SP_INST
CLK_FEEDBACK = 1X
CLKDV_DIVIDE = 2
CLKFX_DIVIDE = 1
CLKFX_MULTIPLY = 4
CLKIN_DIVIDE_BY_2 = FALSE
CLKIN_PERIOD = 20.000
CLKOUT_PHASE_SHIFT = NONE
DESKEW_ADJUST = SYSTEM_SYNCHRONOUS
DFS_FREQUENCY_MODE = LOW
DLL_FREQUENCY_MODE = LOW
DUTY_CYCLE_CORRECTION = TRUE
FACTORY_JF = 16'hC080
PHASE_SHIFT = 0
STARTUP_WAIT = FALSE

Каким образом влепить DCM в проект?
Во View HDL Source вижу (правда на Verilog ):

////////////////////////////////////////////////////////////////////////////////
// Copyright © 1995-2008 Xilinx, Inc. All rights reserved.
////////////////////////////////////////////////////////////////////////////////
// ____ ____
// / /\/ /
// /___/ \ / Vendor: Xilinx
// \ \ \/ Version : 10.1
// \ \ Application : xaw2verilog
// / / Filename : DCM_CLOCK.v
// /___/ /\ Timestamp : 05/03/2011 11:52:15
// \ \ / \
// \___\/\___\
//
//Command: xaw2verilog -intstyle D:/XILINX_PROJECTS_2010/EVK_DCM/1/DCM_CLOCK.xaw -st DCM_CLOCK.v
//Design Name: DCM_CLOCK
//Device: xc3s50an-5tqg144
//
// Module DCM_CLOCK
// Generated by Xilinx Architecture Wizard
// Written for synthesis tool: XST
`timescale 1ns / 1ps

module DCM_CLOCK(CLKIN_IN,
CLKIN_IBUFG_OUT,
CLK0_OUT);

input CLKIN_IN;
output CLKIN_IBUFG_OUT;
output CLK0_OUT;

wire CLKFB_IN;
wire CLKIN_IBUFG;
wire CLK0_BUF;
wire GND_BIT;

assign GND_BIT = 0;
assign CLKIN_IBUFG_OUT = CLKIN_IBUFG;
assign CLK0_OUT = CLKFB_IN;
IBUFG CLKIN_IBUFG_INST (.I(CLKIN_IN),
.O(CLKIN_IBUFG));
BUFG CLK0_BUFG_INST (.I(CLK0_BUF),
.O(CLKFB_IN));
DCM_SP DCM_SP_INST (.CLKFB(CLKFB_IN),
.CLKIN(CLKIN_IBUFG),
.DSSEN(GND_BIT),
.PSCLK(GND_BIT),
.PSEN(GND_BIT),
.PSINCDEC(GND_BIT),
.RST(GND_BIT),
.CLKDV(),
.CLKFX(),
.CLKFX180(),
.CLK0(CLK0_BUF),
.CLK2X(),
.CLK2X180(),
.CLK90(),
.CLK180(),
.CLK270(),
.LOCKED(),
.PSDONE(),
.STATUS());
defparam DCM_SP_INST.CLK_FEEDBACK = "1X";
defparam DCM_SP_INST.CLKDV_DIVIDE = 2.0;
defparam DCM_SP_INST.CLKFX_DIVIDE = 1;
defparam DCM_SP_INST.CLKFX_MULTIPLY = 4;
defparam DCM_SP_INST.CLKIN_DIVIDE_BY_2 = "FALSE";
defparam DCM_SP_INST.CLKIN_PERIOD = 20.000;
defparam DCM_SP_INST.CLKOUT_PHASE_SHIFT = "NONE";
defparam DCM_SP_INST.DESKEW_ADJUST = "SYSTEM_SYNCHRONOUS";
defparam DCM_SP_INST.DFS_FREQUENCY_MODE = "LOW";
defparam DCM_SP_INST.DLL_FREQUENCY_MODE = "LOW";
defparam DCM_SP_INST.DUTY_CYCLE_CORRECTION = "TRUE";
defparam DCM_SP_INST.FACTORY_JF = 16'hC080;
defparam DCM_SP_INST.PHASE_SHIFT = 0;
defparam DCM_SP_INST.STARTUP_WAIT = "FALSE";
endmodule

Счас попробую ....


Сообщение отредактировал NOVY - May 3 2011, 08:57
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение May 3 2011, 08:55
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 088
Регистрация: 20-10-09
Из: Химки
Пользователь №: 53 082



Ну если Вы на языке RTL пишете, то подключается как обычный модуль, на верилоге что-то типа
Код
dcm_0 dcm_0
(
.clkin(clkin),
.clk0(clk0)
);

имена сигналов и название dcm ставьте собственные
Go to the top of the page
 
+Quote Post
Maverick
сообщение May 3 2011, 09:08
Сообщение #3


я только учусь...
******

Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



Цитата(NOVY @ May 3 2011, 11:17) *

пользуйтесь пожалуйста тегами - легче читать


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
NOVY
сообщение May 3 2011, 09:22
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 49
Регистрация: 28-09-09
Пользователь №: 52 622



Цитата(bogaev_roman @ May 3 2011, 11:55) *
Ну если Вы на языке RTL пишете, то подключается как обычный модуль, на верилоге что-то типа
Код
dcm_0 dcm_0
(
.clkin(clkin),
.clk0(clk0)
);

имена сигналов и название dcm ставьте собственные


Вроде бы уже получилось ...

На VHDL :

entity DCM_PROBA is

port (

CLK: IN std_logic;
TEST_OUT: OUT std_logic;

end DCM_PROBA;

architecture behavior of DCM_PROBA is


signal CLKIN_IN: std_logic ;
signal CLK0_OUT: std_logic ;
signal CLKIN_IBUFG_OUT: std_logic ;

component DCM_CLOCK

port (CLKIN_IN :in std_logic;
CLKIN_IBUFG_OUT :out std_logic;
CLK0_OUT :out std_logic
);

end component;


begin


DCM_1: DCM_CLOCK

port map (
CLKIN_IN => CLKIN_IN,
CLKIN_IBUFG_OUT => CLKIN_IBUFG_OUT,
CLK0_OUT => CLK0_OUT );

end architecture behavior;
Go to the top of the page
 
+Quote Post
NOVY
сообщение May 3 2011, 10:27
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 49
Регистрация: 28-09-09
Пользователь №: 52 622



Цитата(NOVY @ May 3 2011, 12:22) *
Вроде бы уже получилось ...

На VHDL :

entity DCM_PROBA is

port (

CLK: IN std_logic;
TEST_OUT: OUT std_logic;

end DCM_PROBA;

architecture behavior of DCM_PROBA is


signal CLKIN_IN: std_logic ;
signal CLK0_OUT: std_logic ;
signal CLKIN_IBUFG_OUT: std_logic ;

component DCM_CLOCK

port (CLKIN_IN :in std_logic;
CLKIN_IBUFG_OUT :out std_logic;
CLK0_OUT :out std_logic
);

end component;


begin


DCM_1: DCM_CLOCK

port map (
CLKIN_IN => CLKIN_IN,
CLKIN_IBUFG_OUT => CLKIN_IBUFG_OUT,
CLK0_OUT => CLK0_OUT );

end architecture behavior;



Всем СПАСИБО!
Тему закрываю.
Go to the top of the page
 
+Quote Post

Closed TopicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 29th June 2025 - 15:37
Рейтинг@Mail.ru


Страница сгенерированна за 0.01415 секунд с 7
ELECTRONIX ©2004-2016