- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Hi,
I have a CyCIII connectet to a serial configuration device. I´m able to configure the CYC III with active serial. Now I want to access the Flash with the ALT_ASMI_Parallel_Interface. I pulled the signal read_sid to HIgh... and about 40 clock cycs later the busy signal (ouptput) goes to low. The problem is that the epcs_id (8 bit output) is allways 0xFF. What could there be wrong? clk_in frequency of alt_asmi is 12.5Mhz from a PLL. Thanks ChrisLien copié
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
I too have a similar issue with a cyc3 . Probing the EPCS16 shows that after FPGA configuration the EPCS nCS signal goes low. When the ASMI function is used to preform a read the nCS is driven high when the operation code is sent out. Sort of behaves as though the nCS is inadvertantly inverted in the megafunction.
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
The altera megafunction shall work with EPCS devices. I do not have an EPCS device but a ordinary serial flash from STM.
If you have a standard EPCS device this shall work for sure. I only have tested it in simulation and not in hardware. Do you probing in hardware? Ensure that you have selected the right EPCS device in the megacore wizard. In hardware you have to ensure to use the correct pins on the cylone III device.- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Yep, I'm using the correct device n the megafunction (epcs16). It's failing in the actual hardware where as I mentioned earlier the nCS behaves as though it's being inverted. The traces below show the operation during a read through the asmi function. The signals from top to bottom are conf_done, asdi, nCS, data, dclk.
http://patobravo.smugmug.com/photos/218312442-L.jpg- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
if the measurement is OK, the nCS should be inverted. If you are sure that this signal comes directly from the megacore, you should ask the altera technical support with a request on the homepage. This requests are often replied fast. You can also post your solution here.
You can also try to invert the nCS signal by your self and check what happens than :)- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
--- Quote Start --- You can also try to invert the nCS signal by your self and check what happens than :) --- Quote End --- Yea, I'm waiting to hear from MySupport. I'd try inverting but I use the same part for configuration. During configuration the sense of nCS is correct, it's after the FPGA enters user mode it gets hosed.
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Hello John,
A software bug report has been filed and we are all awaiting the solution. Your angel.- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
For closure: the megafunction did genrate code that inverted nCS in user mode and a smalll portion of megafunction code was required to be replaced. I'm told this will be fixed with Q8.
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Hi,
I have similar problem on Cyclone II EP2C5Q208C8N. Sometimes I can't read all EPCS configuration memory because it seams that nCS goes High from altasmi megafunction. Anybody has found a solution ? Ciao. Vittorio- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
The fix they gave me for Cyc III worked and they had promised me it'd be incorporated into Quartus 8; I haven't checked that yet though and probably won't until the next product update.
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
Hi Johns,
what is the solution they gave you ? Vittorio- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
They had me modify the file epcs_asmi.v lines as follows:
original code: initial ncs_reg = 0; // synopsys translate_on always @ ( negedge clkin_wire or posedge end_ophdly) if (end_ophdly == 1'b1) ncs_reg <= 1'b0; else if (wire_ncs_reg_ena == 1'b1) ncs_reg <= 1'b1; modify it to: initial ncs_reg =1; // synopsys translate_on always @ ( negedge clkin_wire or posedge end_ophdly) if (end_ophdly == 1'b1) ncs_reg <= 1'b1; else if (wire_ncs_reg_ena == 1'b1) ncs_reg <= 1'b0; Of course YMMV. But I'd be really surprised if CycII had the same issue, that's a relatively mature product. But then things get broken with every new release so I guess it may not be that hard to beleive.- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
I use: 1. Quartus 8 + SP1 2. Cyclone III 3. EPCS64 4. Verilog If using the mega wizard as is, and it have major bug, the CSn line to the EPCS64 is active hi and should be active low. I found manual correction in altera forum http://www.alteraforum.com/forum/archive/index.php?t-1141.html (http://www.alteraforum.com/forum/archive/index.php?t-1141.html) johns April 9th, 2008, 10:50 AM They had me modify the file epcs_asmi.v lines as follows: original code: initial ncs_reg = 0; // synopsys translate_on always @ ( negedge clkin_wire or posedge end_ophdly) if (end_ophdly == 1'b1) ncs_reg <= 1'b0; else if (wire_ncs_reg_ena == 1'b1) ncs_reg <= 1'b1; modify it to: initial ncs_reg =1; // synopsys translate_on always @ ( negedge clkin_wire or posedge end_ophdly) if (end_ophdly == 1'b1) ncs_reg <= 1'b1; else if (wire_ncs_reg_ena == 1'b1) ncs_reg <= 1'b0; Manually change the verilog file This fix the issue, but still one major issue: The pin DCLK to EPCS64 is always active; this core should turn ON the clock only after try to access to the EPCS64 and not all the time (power issue, EMI/RFI issues) Please send me quick correction to this issue as well
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
This issue has been fixed in QII 9.0.
But the manual does not document that "Device and Pin Options" -> "Dual-Purpose pins" must all be set to "Use as regular I/O" otherwise the communication to the EPCS is not established. That is omission in the manual is IMHO a bug.- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
When I look at the "Device and Pin Options" dialog under "Dual-Purpose pins" the only possibility allowed in the drop down box for the ADS0, nCS0 pins is "As input tri-stated" there is no other choice. For the pin nCEO there are two choices listed "Use as programming pin" and "Use as regular I/O". I will try to see if it works with this setting for ADS0 and nCS0. This is for an EP2C8 with an EPCS4 under Quartus II v9.0.
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
--- Quote Start --- the only possibility allowed in the drop down box for the ADS0, nCS0 pins is "As input tri-stated" --- Quote End --- Yes, this seems to be a Quartus "special" with Cyclone II. The Altera SFL MegaFunction is however working correctly with exactly this setting, obviously using ASDO, NCSO and DCLK as output in user mode. So I would expect altasmi to work as well, despite of this setting. Another option is to set PS configuration in Quartus, but actually configure AS with MSEL. Then you get free choose of dual-purpose pin configuration again. I didn't try with Cyclone II, but I needed this workaround with Cyclone III due to some oddities of previous Quartus versions.
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Surligner
- Imprimer
- Signaler un contenu inapproprié
I can confirm that the Cyclone II can read the EPSC4 using altasmi_parallel with ADS0 and nCS0 set to "As input tri-stated" and nCE0 set to "use as regular I/O".

- S'abonner au fil RSS
- Marquer le sujet comme nouveau
- Marquer le sujet comme lu
- Placer ce Sujet en tête de liste pour l'utilisateur actuel
- Marquer
- S'abonner
- Page imprimable